Ben*_*ett 6 javascript testing node.js jestjs
我正在用 jest 测试我的库,并且在第一层有一个包含多个描述调用的文件,但是当我运行“npm test”时,它报告:“测试套件:1 个通过,总共 1 个”“测试:26 个通过,共 26 个"
为什么不报告几个测试套件?
据我所知,jest 的 describe 函数应该创建自己的测试套件,但不知何故它们都被组合在一起......
来自 jest API,“describe(name, fn) 创建一个块,将几个相关测试组合到一个测试套件中”
似乎 Jest 并没有真正将每个顶级调用都算作describe()一个单独的测试套件。在 Jest 的 GitHub 存储库中甚至有一个未解决的问题,将这种行为报告为一个错误。
确实,正如您所描述的以及repl.it 上的这个最小示例所展示的,对 的两个顶级调用describe():
const add = require('./add');
describe('add', () => {
it('should add two numbers', () => {
expect(add(1, 2)).toBe(3);
});
});
describe('add again', () => {
it('should add two numbers', () => {
expect(add(1, 0)).toBe(1);
});
});
Run Code Online (Sandbox Code Playgroud)
被视为单个测试套件:
Jest v22.1.2 node v7.4.0 linux/amd64
PASS ./add-test.js
add
? should add two numbers (5ms)
add again
? should add two numbers
Test Suites: 1 passed, 1 total
Tests: 2 passed, 2 total
Snapshots: 0 total
Time: 1.025s
Run Code Online (Sandbox Code Playgroud)
当前的 Jest 文档在说明以下内容时似乎具有误导性:
describe(name, fn)创建一个块,将几个相关的测试组合在一个“测试套件”中
| 归档时间: |
|
| 查看次数: |
1939 次 |
| 最近记录: |