jenkins - Jenkins从远程测试PC发布junit xml
问题描述
当我使用 pytest 在与 Jenkins 相同的盒子上运行测试时,我可以发布 junit xml 报告。它工作得很好。
现在我在远程测试电脑上运行 pytest 启动 Jenkins。它运行一系列 python 测试并在远程测试 PC 上生成 junit xml 报告。我卡住的地方是如何将这些junit xml报告推回詹金斯?
测试 PC 是 Windows 10。我目前通过 powershell 命令远程启动测试以启动 pytest。我在远程测试电脑上没有 Jenkins 从代理。
解决方案
这是一个使用 stash / unstash 将文件从一个节点复制到另一个节点的示例。文件 '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: '*'
}
}
推荐阅读
- google-sheets - 将列转换为行
- sql - 需要知道&&在这个查询中的作用
- php - 为什么我的 html 文件在 wordpress 侧边栏小部件中的回显会破坏其他小部件前端小部件样式?
- c++ - 如何在没有任务切换的情况下创建 QThread
- python - 使用 Pandas 聚合 JSON 对象中的相似字段
- memory-management - cython 内存不足
- php - 如何修复 PHP/Sendgrid/Heroku 中的 "401Array{"errors":[{"message":"Permission denied, wrong credentials","field":null,"help":null}]}" 错误?
- css - 在 Less 样式表中使用 Angular 组件名称与生成的 DOM 不匹配
- html - Angular 条件类被覆盖
- c# - 当在 lambda 表达式中使用三元条件运算符时,Linq select 返回错误的结果