从Jenkins Pipeline发布多个机器人测试结果

tim*_*mmy 5 robotframework jenkins-pipeline

我有一个Jenkins 2.0 Pipeline脚本,它运行两个独立的Robot测试套件.该脚本尝试发布两个测试套件结果,但是发布者使用最后一个发布覆盖了第一个发布.

node('robot') {
    ...
    publishTestResults('journey')
    publishTestResults('regression')
}

void publishTestResults(String type) {
step([
        $class           : 'hudson.plugins.robot.RobotPublisher',
        outputPath       : 'portfolio-app\\target\\robot-output\\' + type,
        passThreshold    : 100,
        unstableThreshold: 100,
        otherFiles       : '',
        reportFileName   : '*\\report*.html',
        logFileName      : '*\\log*.html',
        outputFileName   : '*\\output*.xml'
])
Run Code Online (Sandbox Code Playgroud)

}

在UI中,我们看到两个已发布的结果,但这两个集都是针对regression测试用例的.最后一次发布获胜.

在此输入图像描述

有什么方法可以发布两组Robot结果.

Ken*_*ock 4

这不会直接回答您的问题,但它是您想要实现的目标的可能解决方案。

您可以使用 rebot 将两组机器人结果合并为一组。然后只需发布合并的报告即可。rebot 有很多关于如何合并报告的选项。

  • 文档可以在这里找到:http://robotframework.org/robotframework/latest/RobotFrameworkUserGuide.html#using-robot-and-rebot-scripts “rebo​​t --help”将提供许多选项的列表。在将结果导入 jenkins 之前,我通常使用类似“rebo​​t -o合并.xml -r合并报告.html -l合并日志.html -x合并.xunit **/*.xml”之类的东西。 (2认同)