Jenkins测试结果分析器不显示结果

Noa*_*Noa 5 testing automation jenkins jenkins-plugins

我一直在使用jenkins的TRA插件一段时间,突然间,它停止显示我正在运行的某些作业的结果。我收到的消息是:

没有检索到构建数据。您可能需要选择一个模块。

我已经阅读了这个答案,但是已经在Post-build Actions下使用Publish JUnit测试结果报告

Job的工作空间路径正确,所有测试报告.xml文件都在那里。

我想念什么?

Mik*_*ick 5

没有检索到构建数据。您可能需要选择一个模块。

这意味着什么在某种程度上取决于您正在处理的Jenkins项目。这似乎也是插件仅有的错误消息,这使得解密它的难度超出了应有的程度。

这个问题似乎与Freestyle作业(相对于Maven作业)有关,因为提到了Publish JUnit测试结果生成后动作。

自由式工作

对于自由样式作业,此错误通常意味着未找到已发布的 XML文件(或一系列已发布的 XML文件)。在这种情况下,“选择模块”没有任何意义。

发布JUnit结果时,工作空间中的xml文件被处理为一个名为的文件junitResult.xml。这就是我引用已发布的 XML文件时的意思。此文件存储在工作区外部的构建历史记录中:

D:.                                   
????jobs                              
    ????MavenFreestyle                
        ????builds                    
        ?   ????1                     
        ?   ?       build.xml         
        ?   ?       changelog.xml     
        ?   ?       junitResult.xml   
        ?   ?       log               
        ?   ?                         
        ?   ????2                     
        ?           build.xml         
        ?           changelog.xml     
        ?           junitResult.xml   
        ?           log               
        ?                             
        ????workspace                 
            ?   pom.xml               
            ?                         
            ????.mvn                  
            ????src                   
            ????target      
Run Code Online (Sandbox Code Playgroud)

如果junitResult.xml缺少这些文件,您将得到空的TRA结果。当然,如果在工作区中未找到测试结果,则不会junitResult.xml创建任何文件。我想至少也有可能创建它们,然后再由某些进程或人员对其进行修改或删除。

无论如何,这些文件是您要验证其存在(和内容)的文件,而不是工作空间中的任何文件。

如果这些junitResult.xml文件似乎适合您的工作,但结果为空,则使用其中一个文件的内容更新问题将很有帮助。


要验证是否在要发布的工作空间中找到文件,请确保未选中此复选框:

空测试结果失败

这样一来,如果你的Ant模式和您的实际文件位置之间的不匹配,构建就会失败。如果选中此框,并且您用粗放的方式包含了模式,则作业将成功,但是TRA结果将为空。

Maven工作

对于使用Maven Jobs遇到此问题的读者:

在这里,“选择模块”确实有意义。“测试结果分析器”链接可从Module页面使用,但从页面访问时显示空白结果Project

我在插件Wiki页面的注释中发现了上述行为的“文档”

Maven项目页面

Maven模块页面

多配置作业

对于多配置项目,必须通过Configuration页面访问结果。从Project页面访问它们总是产生空结果。

多配置项目页面

多配置配置页面