版本

运行测试

ESLint 的大部分代码都有相关的单元测试。单元测试使用 Mocha 编写,并在向 ESLint 贡献代码时需要。你可以在 tests 目录中找到所有单元测试。

当你第一次获取源代码时,需要先运行 npm install 一次来设置 ESLint 的开发环境。完成之后,你可以通过以下方式运行测试:

npm test

这会自动启动 Mocha 并运行 tests 目录中的所有测试。你只需要添加你的测试,并在运行测试时它会自动被检测到。

运行单个测试

如果你只想快速运行单个测试文件,可以通过直接运行 Mocha 并传入文件名来实现。例如:

npm run test:cli tests/lib/rules/no-undef.js

如果你只想运行一个或一部分 RuleTester 测试用例,可以将 only: true 添加到每个测试用例,或者使用 RuleTester.only(...) 包装测试用例,以自动添加它

ruleTester.run("my-rule", myRule, {
	valid: [
		RuleTester.only("const valid = 42;"),
		// Other valid cases
	],
	invalid: [
		{
			code: "const invalid = 42;",
			only: true,
		},
		// Other invalid cases
	],
});

运行单个测试在处理特定错误并迭代解决方案时很有用。在提交 pull request 之前,请务必运行 npm testnpm test 使用 Mocha 的 --forbid-only 选项来防止带有 only 的测试通过完整的测试运行。

对单元测试的更多控制

npm run test:cli./node_modules/.bin/mocha 中 Mocha cli 的别名。 选项 可用于提供,以帮助更好地控制要运行的测试。

npm test 中测试的默认超时时间为 10000 毫秒。你可以通过提供 ESLINT_MOCHA_TIMEOUT 环境变量来更改超时时间,例如:

ESLINT_MOCHA_TIMEOUT=20000 npm test
更改语言