我在大约 20 个测试中使用来自 @apollo/react-testing
的 MockedProvider
并且每个测试单独运行大约 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 偏移滚动内容