Skip to content
← Back to rules

jest/prefer-equality-matcher 风格

An auto-fix is available for this rule.

它做了什么

Jest 内置了用于期望相等性的匹配器,当预期失败时,这些匹配器能提供更易读的测试代码和更有帮助的错误信息。

为什么这是个问题?

使用通用匹配器(如 toBe(true))来测试相等性表达式会使测试更难阅读和理解。当测试失败时,错误信息不够有帮助,因为它们不会显示实际的值。使用特定的相等性匹配器可以更清晰地表达测试意图,并提供更好的调试信息。

示例

此规则的错误代码示例:

javascript
expect(x === 5).toBe(true);
expect(name === "Carl").not.toEqual(true);
expect(myObj !== thatObj).toStrictEqual(true);

此规则的正确代码示例:

javascript
expect(x).toBe(5);
expect(name).not.toEqual("Carl");
expect(myObj).toStrictEqual(thatObj);

此规则与 eslint-plugin-vitest 兼容。要使用它,请在你的 .oxlintrc.json 中添加以下配置:

json
{
  "rules": {
    "vitest/prefer-equality-matcher": "error"
  }
}

如何使用

要通过配置文件或 CLI 启用此规则,可以使用:

json
{
  "plugins": ["jest"],
  "rules": {
    "jest/prefer-equality-matcher": "error"
  }
}
bash
oxlint --deny jest/prefer-equality-matcher --jest-plugin

参考资料