当单元测试失败时,Jest返回一个非零退出代码
但是当我输出时退出代码被抑制了
如何根据Linux环境变量${PIPESTATUS[0]}使作业失败?
我已验证PIPESTATUS[0]具有非零值
我尝试退出${PIPESTATUS[0]},但不起作用
我尝试了if语句,但语法可能不正确
- name: Install & test
id: unit_coverage_status
run: |
npm ci
npm run test-coverage | tee ./unit-coverage.txt
echo "Test coverage exit code: ${PIPESTATUS[0]}"
if ${PIPESTATUS[0]} == 0;
then
echo "Unit tests passed"
else
echo "Unit tests failed"
exit 1
fi
生成txt后,我将使用以下步骤将结果添加到PR中
- name: Jest integration coverage comment
uses: MishaKav/jest-coverage-comment@main
with:
coverage-path: ./int-coverage.txt
title: Integration Test Coverage
1条答案
按热度按时间kmpatx3s1#
我能够通过向命令中添加
&& exit ${PIPESTATUS[0]}
来捕获测试失败。只有当测试通过时才会生成覆盖注解,如果测试失败了,我更关心的是显示它而不是显示它的覆盖。