我正在尝试使用Xunit插件和Jenkins管道显示MStest,Nunit3,Nunit2结果,但均未成功。 我找不到有关Xunit插件以及所有相同参数的所有必需参数的正确文档。
我有以下链接,但它们并没有太大帮助 https://www.cloudbees.com/blog/xunit-and-pipeline https://wiki.jenkins.io/display/JENKINS/xUnit+Plugin
有人知道如何使用Xunit插件在jenkins管道中显示mstest,nunit3和nunit2结果吗?
以下是我用于MStest报告解析的代码并出现错误。 我对Jenkins中的管道还很陌生,非常感谢任何帮助/指针!在此先感谢!
以下是我的管道代码
pipeline {
agent any
stages {
stage('Copy Test Reports') {
agent {
node {
label 'test'
customWorkspace "C:\\jenkins\\workspace\\tests"
}
}
steps {
echo 'Hello world!'
bat '''copy \\\\Precheck.xml .
copy \\\\*.trx .'''
}
post {
always {
xunit (
thresholds: [$class: 'FailedThreshold', unstableThreshold: '1'],
tools: [$class: 'MSTest', pattern: '*.trx']
)
}
}
}
}
}
Error:
Missing required parameter: "thresholdMode" @ line 19, column 21.
xunit (
^
WorkflowScript: 19: Missing required parameter: "testTimeMargin" @ line 19, column 21.
xunit (
^
答案 0 :(得分:1)
尽管遇到了GoogleTest报告,但我遇到了同样的问题。 将缺失的参数添加到您的xunit()调用中应该可以解决问题:
xunit (
testTimeMargin: '3000',
thresholdMode: 1,
thresholds: [$class: 'FailedThreshold', unstableThreshold: '1'],
tools: [$class: 'MSTest', pattern: '*.trx']
)
'3000'和'1'是xunit-plugin在内部设置的默认值。
答案 1 :(得分:0)
我必须对插件做些不同的操作,因此我会发布解决方案,以防它有所帮助-
xunit(
[MSTest(deleteOutputFiles: true,
failIfNotNew: true,
pattern: '*.trx',
skipNoTestFiles: false,
stopProcessingIfError: true)
])
注意,这希望您的trx文件位于工作空间的根目录中。如果不是,则需要将它们复制到那里。
答案 2 :(得分:0)