如果 gitlab 中的测试用例失败,如何停止管道?

问题描述 投票:0回答:0

我有这个yml文件

test1:
  stage: test
  #
  rules:
    - when: 
      if: $TEST_ENABLE == "ON"
  script:
    - ........ logic to run tests ............
    - C:\tpt.exe --tpt_output="xml:logs.xml"
  artifacts:
    paths:
      - targets\test\reports\*.html

我有这个阶段 test1 运行几个测试用例,一旦完成我创建一个 logs.xml 文件存储所有数据,如持续时间、结果、测试用例编号等。目前当管道被触发时,测试用例失败但测试阶段通过。我认为管道和 xml 之间没有联系。

在 logs.xml 中,我可以看到结果=错误。现在我想在管道内解析它并告诉管道如果 result=ERROR 则阶段失败。我怎样才能做到这一点?有人可以在这里指导我吗?提前致谢。

我尝试过但不起作用的方法:

script:
    - ........ logic to run tests ............
    - C:\tpt.exe --tpt_output="xml:logs.xml"
    - test -f logs.xml && grep -L "ERROR" logs.xml
xml gitlab yaml xml-parsing gitlab-ci
© www.soinside.com 2019 - 2024. All rights reserved.