我想设置两个不同的环境,并能够在监视模式下运行.
|-- /server
| |-- index.js <- Node
|-- /client
| |-- index.js <- jsdom
|-- package.json
Run Code Online (Sandbox Code Playgroud)
实际上我为每个环境运行两次jest,为每个环境提供不同的配置文件:
$ yarn test -- --config=server.config.json
$ yarn test -- --config=client.config.json
Run Code Online (Sandbox Code Playgroud)
但这并不能让我同时兼顾两者.
Mic*_*ała 18
编辑(2018年1月):
现在可以这样做(自Jest v20起),并调用该选项projects.阅读更多关于文档的内容.
基本上,您可以定义要在其中运行Jest的项目数组:
{
"projects": ["<rootDir>/client", "<rootDir>/server", "<rootDir>/some-glob/*"]
}
Run Code Online (Sandbox Code Playgroud)
只记得每个项目都需要有自己的配置.如果你想自动选择配置,把它放在jest.config.js文件中或者通常放在文件中package.json.
如果您希望将配置放在其他位置(例如,在configs/jest.js),则需要指向配置文件的路径(rootDir正确设置选项):
{
"projects": ["<rootDir>/client/configs/jest.js", "<rootDir>/server/configs/jest.js"]
}
Run Code Online (Sandbox Code Playgroud)
原始答案:
目前这是不可能的,但对于这种情况存在问题:https://github.com/facebook/jest/issues/1206.
随意跳进去发表评论!
您还可以使用的@jest-environment文档块来设定测试环境在每个文件的基础:
/**
* @jest-environment jsdom
*/
test('use jsdom in this test file', () => {
const element = document.createElement('div');
expect(element).not.toBeNull();
});
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
4071 次 |
| 最近记录: |