如何使用不同的jest.config.js进行单元和组件测试?
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何使用不同的jest.config.js进行单元和组件测试?相关的知识,希望对你有一定的参考价值。
我正在尝试为应用的组件级测试创建单独的测试套件。
在这个单独的套件中,我需要一个自定义的测试环境,该环境将引导一些持久层模拟,并且这些测试将与单元测试存放在我的项目结构中的单独文件夹中。
例如单元测试将在__tests__
文件夹中的代码附近,而组件测试将在顶层tests/
目录中。
我已经完成了jest.config.js的大部分设置,但是当我添加projects
部分以覆盖某些字段时,特别是testMatch
和testEnvironment
,它完全忽略了我在global中指定的配置。
现在,我一直在阅读projects
配置主要是关于monorepo设置的信息,所以我认为这不是正确的方法。
理想情况下,我在jest.config.js
目录中只能有一个单独的tests/
,但即使可以使用,我也看不到如何设置它。
任何对此问题的见解都会有所帮助。提前谢谢。
要指定不同的配置文件,可以使用--config
选项。
例如,如果您具有用于组件测试的--config
文件配置和用于单元测试的tests/jest.config.js
文件,则可以在jest.config.js
中配置脚本,使它们看起来像这样:
package.json
我最终要做的是在"scripts": {
"tests:unit": "jest --config=jest.config.js",
"tests:component": "jest --config=tests/jest.config.js"
}
中指定单独的项目>
package.json
这允许我自己运行
"jest": { "projects": [ "<rootDir>/jest.unit.config.js", "<rootDir>/tests/jest.component.config.js" ] }
,它将运行所有项目,或者如果我想指定要运行的特定配置,我可以运行jest
,它将仅运行该特定项目。
我还可以在我的package.json中添加一个脚本部分,以更轻松地运行它们。
jest --projects jest.unit.config.js
以上是关于如何使用不同的jest.config.js进行单元和组件测试?的主要内容,如果未能解决你的问题,请参考以下文章
jest.config.js 中的 `moduleNameMapper` 设置在 CircleCI 上不起作用
在 TypeScript 中使用 NextJS 设置 Jest + React 测试库 -- 设置 upp jest.config.js 时出错