2017-02-17 32 views
3

目前,我有两个文件夹:用于单元(快速)测试的__tests__和用于慢速测试的__integration__如何分离Jest上的单元和集成/长时间运行测试?

然后,在package.json

{ 
    "scripts": { 
    "test": "jest", 
    "test:integration": "jest -c '{}'", 
    ... 
    }, 
    "jest": { 
    "testPathIgnorePatterns": ["/node_modules/", "__integration__"] 
    } 
} 

所以,当我想要做TDD,我只运行npm test当我想测试整个项目,npm run test:integration。由于Jest是作为“无配置”测试框架提供的,所以我想如果有更好的(或适当的)方式来配置它。

谢谢。

回答

1

您是否尝试过TDD的jest --watch?它只运行与你的git更改相关的文件,首先运行错误并大量利用缓存来提高速度。

除此之外,jest -caccepts a path,不是字符串。如果jest-integration-config.json位于您项目的根目录下,您应该对jest -c jest-integration-config.json有好处。

2

引用此post

你可以尝试名称的文件,如:

index.unit.test.jsapi.int.test.js

并与玩笑的模式匹配功能,它可以很方便地单独运行 他们。对于单元测试运行jest unit和对于 集成测试运行jest int

您可以根据您的偏好定义文件结构/位置,因为基于文件名的模式匹配是jest知道如何运行。

另见jest cli documentation about npm scripts

如果通过npm test运行玩笑,你仍然可以通过插入--之间npm test和玩笑参数使用命令行参数

相关问题