reactjs - react Apollo 测试 : MockProvider takes a l

我在大约 20 个测试中使用来自 @apollo/react-testingMockedProvider 并且每个测试单独运行大约 2.5 秒,但是当一起运行时一些他们随机抽取 6-8 秒

我真的无法解决这个问题,因为“慢”测试总是不同的,而且测试的执行顺序总是不同的。

每个测试都有以下结构

import React from 'react'
import { MemoryRouter } from 'react-router-dom'
import { MockedProvider } from '@apollo/react-testing'
import { render, cleanup} from '@testing-library/react'
import MyComponent from './'

describe('MyComponent', () => {
  afterEach(cleanup)
  it('queries for and displays MyComponent', async () => {
    const cmp = render(
      <MockedProvider mocks={mocks} addTypename={false}>
          <MyComponent />
      </MockedProvider>,
      { wrapper: MemoryRouter }
    )
    expect(cmp.getByText('something')).toBeInTheDocument()
  })
})

你有过类似的经历吗?知道我可以检查什么吗? 我上线了 react v16.9.0 @apollo/react-testing v3.1.3

最佳答案

遇到了类似的问题。对我来说,问题是特定查询返回的记录太多。

我有大约 4,000 个模拟结果作为数组返回,测试大约需要 4 - 5 秒才能完成。现在返回 10 个结果,它们减少到大约 75 毫秒。

帮助我缩小范围的是使用 Chrome 的 Node.js 远程调试功能对一项测试进行概要分析。 Kent C Dodds 做了一个关于它的快速视频,这对我有帮助:https://www.youtube.com/watch?v=RB2g-o39upo

关于reactjs - react Apollo 测试 : MockProvider takes a long time when running tests,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58996947/

相关文章:

java - 如何禁用 Spring Actuators 的内容协商?

android - Firebase/Fabric Crashlytics 和 Proguard/R

php - 权限被拒绝 : copy/writing file (laravel/php)

pyspark - 如何在 NoteBook 以外的 pyspark 作业中使用 dbutils 命

react-native - react native 运行 ios 忽略模拟器选项

python - 将经过训练的 xgboost 分类器从 AWS s3 上传到 EMR

ios - SwiftUI:ScrollView 偏移滚动内容

npm - [错误 : Unspecified GSS failure. 次要代码可能提供更多信息:

c# - EFCore 在一对一关系上生成的列名无效

typescript - 如何在 Visual Studio CE 2019 中使用#region/