jest是否保证它会按顺序在单个文件中运行测试?

时间:2018-01-02 15:00:02

标签: javascript jestjs

我从观察中对jest的理解是,它通过生成帮助程序进程提供并发执行测试,并将测试文件分发给工作程序,以便在完成当前测试文件时执行。

这告诉我,jest不会尝试同时在单个测试文件中执行测试。所以我希望以下测试总是通过(无需传递describe('counting test', () => { let variable = 0; it('should start as 1', () => { variable += 1; expect(variable).toEqual(1); }); it('should change to 2', () => { variable += 1; expect(variable).toEqual(2); }); }); ):

Codename One

即。第二次测试总是在第一次测试完成后运行。这样安全,是否有某个官方文档指明了这种行为?我找不到一个。

1 个答案:

答案 0 :(得分:5)

由于这没有正式答案,我在进行了一些进一步的研究/实验(并由其中一位主持人签字)后,在jest文档中添加了一个。

所以,是的,jest按顺序在文件中运行每个测试,等待每个测试完成,然后再移动到下一个文件。现在在Setup and Teardown中描述了这一点。

进一步注意,描述块都是在任何测试块之前执行的。

供参考,实现此功能的代码主要位于jest-circus/src/run.jsevent_handler.js