javascript - 我如何确保所有 Jest 测试至少有一个期望?

标签 javascript node.js jestjs

Jest 是否有设置或是否有 Lint 规则或方法来确保每个 Jest 测试至少有一个 expect() 调用?

确保这一点的一种方法是在每个测试中使用 expect.assertions()。这需要我记得将它添加到每个测试中。

我在这里寻找工具解决方案。

最佳答案

您可以通过设置一个为所有测试定义 beforeEach Hook 的设置文件来实现您想要的。

您可以通过 setupFilesAfterEnv 指定一个文件来做到这一点 Jest 配置选项。

此外,您还可以使用 hasAssertions检查测试是否至少有一个断言的方法。

考虑到所有这些,你可以有一个像这样的 jest 配置文件:

setupFilesAfterEnv: [
    '<rootDir>tests/support/check-assertions-number.js',
],

在文件 check-assertions-number.js 中:

beforeEach(() => {
    expect.hasAssertions();
});

关于javascript - 我如何确保所有 Jest 测试至少有一个期望?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57514206/

相关文章:

javascript - 尝试准备语句以存储在数据库中

javascript - 使用下拉菜单打开背景链接

Javascript 访问本地可执行文件

node.js - NodeJS、RSA,这安全吗?

javascript - 如何验证 Jest 和 Enzyme 中的 React Prop ?

javascript - 播放 .mp3,然后移至下一页

node.js - 在集合/对象中查找 - SailsJS 和 Waterline ORM

javascript - 查询引用文档的字段

typescript - Jest (ESM) 在单元测试中从 React Native 加载文件时出现问题

javascript - Array.prototype.flatMap() JS 在测试用例和 repl.it 片段中表现奇怪,但在浏览器控制台中则不然