如何 运行 Jest 测试覆盖一个文件

How to run Jest tests with coverage for one file

我只想获得我目前正在处理的一个文件的覆盖率报告。

完整 table 覆盖整个应用程序文件,然后搜索我需要的文件,这有点让人不知所措。

我尝试的是 运行 测试一个文件并添加 --coverage。但它显示了所有文件的覆盖范围:

package.json

...
"test": "react-scripts test",
...

我的命令

npm test my-component.test --coverage

是否有一个选项可以添加到此命令以仅显示 my-component.tsx 覆盖率?

解决方案是添加一个小选项 --collectCoverageFrom 以仅收集特定文件(即组件)。这是基于 this post

NPM 版本
npm test my-component.test -- --coverage --collectCoverageFrom=src/components/my-component/my-component.tsx
注意 --coverage... 之前多了一个 --。这需要为 npm 传递,因为如果没有它,将不会考虑以下提供的选项。

YARN 版本
yarn test my-component.test --coverage --collectCoverageFrom=src/components/my-component/my-component.tsx

这将仅显示 table my-component.tsx 的覆盖率。

注意:

my-component.tsx 文件的路径需要相对于项目根目录且准确。它不能像我为 my-component.test.

所做的那样是相对的