如何为一个组件文件运行 Jest 覆盖

IT技术 reactjs typescript jestjs react-scripts
2021-04-26 00:02:26

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

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

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

包.json

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

我的命令

npm test my-component.test --coverage

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

1个回答

解决方案是添加一个小选项--collectCoverageFrom,仅针对某个文件(即组件)进行收集。这是基于这篇文章https://joshtronic.com/2017/10/24/configuring-jest-to-show-code-coverage-for-all-of-your-files/

npm test my-component.test --coverage --collectCoverageFrom=src/components/my-component/my-component.tsx

这将仅显示my-component.tsx.

注意

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