我是“詹金斯”的初学者,关注this tutorial。
Sixth step我收到了以下错误。
xcodebuild:error:Scheme JenkinsTest当前未配置测试操作。
构建步骤'Xcode'将构建标记为失败 记录测试结果 错误:步骤'发布JUnit测试结果报告'失败:未找到测试报告文件。配置错误? 完成:失败
在测试报告XML 中,我设置了“test-reports /.* xml”
我试图找到我的解决方案,而且许多问题都建立在SO like same issue I have too上,但没有得到解决方案。
我有些困惑,是由“Jenkins”自动生成的.xml文件还是首先我们手动需要添加.xml文件?
简而言之,根据上述错误指导我正确的方向。
答案 0 :(得分:8)
首先确保在测试运行后生成junit.xml。
Jenkins的工作有时看不到当前工作区。因此,在使用之前将报告复制回当前工作区始终是个好主意。
cd <path to report>
cp *.xml $WORKSPACE
现在詹金斯应该拿起报告。 注意:配置可能首先显示错误(因为它无法在工作区中找到xml文件)但是在构建之后这应该消失并且结果应该被记录
答案 1 :(得分:4)
我正在使用鼻子测试(python)生成与xUnit兼容的文件,并且得到:
ERROR: No test report files were found. Configuration error?
我将junit插件用作:
junit "test-results-unit.xml"
junit
似乎默认添加了WORKSPACE
目录,因此对文件使用完整的PATH
也不起作用。我创建了从结果文件到WORKSPACE目录的符号链接,以使其正常工作:
sh 'ln -s tests/test-results-unit.xml $WORKSPACE'
junit "test-results-unit.xml"
答案 2 :(得分:4)
您还可以启用'allowEmptyResults'选项,以便junit插件在找不到测试结果时不会引发异常。
这样,“ test-results”目录是否存在都没有关系。
junit allowEmptyResults: true, testResults: '**/test-results/*.xml'
答案 3 :(得分:0)
感谢@Acid,它确实对我有所帮助。 首先,将module / build / test-results复制到工作空间目录
cp -r app/build/test-results $WORKSPACE/test-results
然后我使用了这个通配符路径
**/test-results/**/*.xml
答案 4 :(得分:0)
其他答案建议将文件复制到工作区目录,但对我来说,只需更改以“ **”开头的路径似乎可以解决问题
junit '**/test-reports/*.xml'
Jenkins junit plugin page说,您需要“在Ant glob语法中指定JUnit XML文件的路径”。我没有深入研究这意味着什么的全部细节,但是以“ **”开头的路径足以使它对我有用。
答案 5 :(得分:0)
我遇到了同样的问题,并且由于 {
"verb": "createSiteColumnXml",
"schemaXml": "<Field Type=\"Note\" DisplayName=\"siteColumnMutipleText\" Required=\"FALSE\" EnforceUniqueValues=\"FALSE\" Indexed=\"FALSE\" UnlimitedLengthInDocumentLibrary=\"TRUE\" NumLines=\"6\" RichText=\"TRUE\" RichTextMode=\"FullHtml\" IsolateStyles=\"TRUE\" Sortable=\"FALSE\" Group=\"Custom Columns\" ID=\"{9b5e375a-44ef-405b-8316-fe136a841775}\" SourceID=\"{b62d1450-8e6f-4be7-84a3-f6600fd6cc14}\" StaticName=\"siteColumnMutipleText\" Name=\"siteColumnMutipleText\" Version=\"1\"></Field>",
"pushChanges": true
}
版本的升级,我的测试报告文件名也更改了
因此,我必须更改,
scala
到
junit '/myworkspace/target/myreport.xml'
答案 6 :(得分:0)
怎么样:
junit allowEmptyResults: true, testResults: "${WORKSPACE}/test-results/*.xml"
或者只是:
junit "${WORKSPACE}/test-results/*.xml"