我正在尝试将ESLint linter与Jest测试框架一起使用。
开玩笑的测试是与某些全局变量一起运行的,例如jest
,我需要告诉linter;但是棘手的是目录结构,通过Jest,测试是与源代码一起嵌入在__tests__
文件夹中的,因此目录结构类似于:
src
foo
foo.js
__tests__
fooTest.js
bar
bar.js
__tests__
barTest.js
通常,我会将所有测试都放在一个目录下,并且可以在其中添加.eslintrc
文件以添加全局变量...但是我当然不想.eslintrc
在每个__test__
目录中都添加文件。
现在,我刚刚将测试全局变量添加到了全局.eslintrc
文件中,但是由于那意味着我现在可以jest
在非测试代码中进行引用,因此这似乎不是“正确的”解决方案。
是否有办法让eslint根据基于目录名称的某种模式来应用规则,或者类似的方法?
eslint-test
带有glob 的文件,例如eslint **/__tests__/*.js -c eslint-test.yml
。话虽如此,我认为没有一个jest
或beforeEach
全球泄漏到生产代码中的危险很大;)