Bamboo的JUnit Parser不会解析我的gtest output.xml

时间:2013-04-02 10:34:33

标签: junit googletest bamboo

我试图用Bamboo添加一些自动单元测试到我的项目,并且一直面临一些问题。单元测试本身是使用googletest完成的,它创建了一个XML文件,该文件应与JUnit解析器兼容。

但是,执行Bamboo的JUnit Parser时出现以下错误:

02-Apr-2013 12:11:22 Starting task ''Parse UnitTest output' of type 'com.atlassian.bamboo.plugins.testresultparser:task.testresultparser.junit'
02-Apr-2013 12:11:22 Parsing test results...
02-Apr-2013 12:11:22 Failing task since test cases were expected but none were found.
02-Apr-2013 12:11:22 Finished task 'Parse UnitTest output'

这似乎与.xml文件本身没有任何关系,因为我尝试了一些。这包括我自己的output.xml,由googletest生成,以及来自https://confluence.atlassian.com/display/BAMBOO/JUnit+parsing+in+Bamboo的示例输出。
我还针对两个提议的.xsd文件调整了所述文件,这些文件应该与JUnit Parser期望的输出相匹配,但都没有效果。

更新
到目前为止,我告诉JUnit Parser寻找$ {bamboo.build.working.directory} /output.xml
当我尝试** / * .xml它起作用。
据我所知,在仔细阅读任务描述后,我必须给它一个文件夹。但我也可以给它文件,如果我用ant-style(用glob?)。这至少是非常混乱,仍然没有完全回答初始问题。所以,如果有人能够启发我,请做。

1 个答案:

答案 0 :(得分:2)

这是一个非常古老的问题,我想我会为后代添加一个答案。正如一些人评论的那样,测试输出文件的配置值需要一个相对路径。问题是,相对于什么?

我认为答案取决于您如何配置源存储库,但通常它将相对于项目的根目录。如果所有其他方法都失败了,请查看Bamboo在检出源代码时放置源代码的位置;这将是Bamboo附加测试输出搜索路径的目录。

对于配置语法,您可以更正可以使用蚂蚁风格的模式(Learning Ant path style以供参考)。

举个例子,如果您的本地计算机上的项目位于C:\git\MyProject,并且您的测试结果位于C:\git\MyProject\Output\Tests\output.xml,那么您指定{{1}在'指定自定义结果目录'相应任务配置的字段。您还可以使用Output/Tests/output.xml搜索Output目录中的所有.xml文件。