有没有办法以 junit.xml 格式生成 Jest / Istanbul 覆盖率报告
Is there a way to generate Jest / Istanbul coverage report in junit.xml format
我想使用 Gitlab CI 在合并请求中跟踪/嵌入覆盖率分析。 gitlab-ci.yml artifacts:reports:junit
配置选项似乎适合这个任务。但是,这需要覆盖率
输出为 junit.xml 格式。
我找不到合适的设置来输出这种格式的 coverage。我也找不到将 lcov/json/clover 转换为 junit.xml 的工具。
可以用jest-junit reporter插件来完成。 https://github.com/jest-community/jest-junit
yarn add --dev jest-junit
然后在本地执行这个看看是否有效
yarn test --colors --coverage --reporters=default --reporters=jest-junit
你会在根目录中看到一个 junit.xml 文件。
像这样配置您的 .gitlab-ci.yml 然后在 Gitlab 中查看输出:
test:
stage: test
coverage: /All files[^|]*\|[^|]*\s+([\d\.]+)/
artifacts:
reports:
junit: junit.xml
script:
- yarn test --colors --coverage --reporters=default --reporters=jest-junit
哦,将 coverage/ 文件夹和 junit.xml 添加到 .gitignore 这样它们就不会添加到 git 存储库中。
这一切似乎在 Create React App 项目中也能正常工作
我想使用 Gitlab CI 在合并请求中跟踪/嵌入覆盖率分析。 gitlab-ci.yml artifacts:reports:junit
配置选项似乎适合这个任务。但是,这需要覆盖率
输出为 junit.xml 格式。
我找不到合适的设置来输出这种格式的 coverage。我也找不到将 lcov/json/clover 转换为 junit.xml 的工具。
可以用jest-junit reporter插件来完成。 https://github.com/jest-community/jest-junit
yarn add --dev jest-junit
然后在本地执行这个看看是否有效
yarn test --colors --coverage --reporters=default --reporters=jest-junit
你会在根目录中看到一个 junit.xml 文件。
像这样配置您的 .gitlab-ci.yml 然后在 Gitlab 中查看输出:
test:
stage: test
coverage: /All files[^|]*\|[^|]*\s+([\d\.]+)/
artifacts:
reports:
junit: junit.xml
script:
- yarn test --colors --coverage --reporters=default --reporters=jest-junit
哦,将 coverage/ 文件夹和 junit.xml 添加到 .gitignore 这样它们就不会添加到 git 存储库中。
这一切似乎在 Create React App 项目中也能正常工作