Jenkins从远程测试PC发布junit xml

时间:2019-04-03 15:00:51

标签: jenkins junit pytest

当我使用pytest在与Jenkins相同的盒子上运行测试时,可以发布junit xml报告。效果很好。

现在,我正在由Jenkins启动的远程测试PC上运行pytest。它运行一系列python测试,并在远程测试PC上生成junit xml报告。我陷入困境的是如何将这些junit xml报告推回Jenkins?

测试PC是Windows10。我目前正在通过powershell命令远程启动测试以启动pytest。我在远程测试计算机上没有Jenkins从属代理。

1 个答案:

答案 0 :(得分:0)

这是一个使用存储/取消存储将文件从一个节点复制到另一个节点的示例。文件'foo.jar'位于源系统上的'/ tmp'中,并将最终位于目标系统上的'/ tmp'中。

stage ('Stash file on node 1') {
    node ('node1') {
        dir ('/tmp') {
            stash name: 'TestTransfer', includes: 'junit.xml'
        }
    }
}

stage ('Unstash file on node 2') {
    node ('node2') {
        dir ('/tmp') {
            unstash 'TestTransfer'
        }
    }
}

这里是一个将文件从节点1复制到主节点,然后将其归档为工件的示例,以便您可以在作业完成后查看或从GUI下载文件

stage ('Stash file on node 1') {
    node ('node1') {
        dir ('/tmp') {
            stash name: 'TestTransfer', includes: 'junit.xml'
        }
    }
}

stage ('Unstash file on master') {
    node () {
        // By default, goes to the workspace.
        // If you want to go to a directory, wrap in 'dir'
        unstash 'TestTransfer'
        archiveArtifacts artifacts: '*'
    }
}