【发布时间】:2021-06-16 00:51:45
【问题描述】:
我一直在开玩笑地遇到这个问题,我在一个测试中设置的数据正在蔓延到另一个测试中并导致它失败。
让我尝试显示一些代码
spec.ts
const MOCK_PRODUCT = require('../dummydata/dummydata.json');
describe('function 1', () => {
test('something', () => {
const productData = MOCK_PRODUCT;
expect(...) // works fine
});
test('something else', () => {
const productData = MOCK_PRODUCT;
productData.someField.push({...})
expect(...) // works fine
});
});
describe('function 2', () => {
test('something more', () => {
const productData = MOCK_PRODUCT;
expect(...) // fails
});
});
我的测试文件是这样的。每个函数都有一个 describe 块,describe 块中有多个测试。
我观察到的是,当我在第二个测试中更改 productData 时,如您所见,更改后的数据在下一个描述块中的所有测试中都可用,导致它们失败。
我做错了吗?有什么遗漏吗?
【问题讨论】:
标签: jestjs