当前位置: 首页 > 知识库问答 >
问题:

在gradle html报告中集成ant junit生成的测试结果

陈增
2023-03-14

在我的gradle构建脚本中,我将doLast方法添加到test task中,以运行ant.junit任务,从而从几个jar文件中执行测试。

    test <<  {
      //run ant junit task with reports stored in $buildDir/test-results

      //after ant junit completion and "test" task completion, 
      //how can I get the gradle generated html report include the above test-results?    
    }

如何增强此任务以获得gradle html报表的好处?我看到ant junit测试xml报告是在$builddir/test-results中与其他“分级测试”创建的xml一起正确创建的。但是,$builddir/reports/tests“只包含。我希望gradle也能获得ant junit创建的测试结果xml文件,并将其包含在html报告中。但这并没有发生。我如何才能得到这种行为呢?

我尝试创建另一个TestReport类型的任务。但这也无济于事。

 task runTestsFromJar( type: TestReport ) {
        destinationDir=file("$buildDir/reports/tests")
        reportOn tasks.test, files("$buildDir/test-results/binary/test")
 }

我正在使用Gradle1.8。

共有2个答案

荆鸿畅
2023-03-14

根据gradle论坛帖子的回应,生成gradle样式的测试html报告似乎不是gradle的现成的。Gradle TestReport任务似乎依赖于“test”任务生成的二进制输出文件。当使用来自Gradle的Ant.JUnitTask运行测试时,不会生成这些。我最终使用了“Ant JUnitReport任务”来生成至少一个有意义的合并报告。

test <<  {
  //run ant junit task with reports stored in $buildDir/test-results

  //after ant junit completion  
   ant.junitReport( toDir: "$buildDir/reports") {
            fileset ( dir:"$buildDir/test-results" )
            report ( format:"frames", todir:"$buildDir/reports" )
   }
}

这给出了一个基本的html报告。可以根据需要使用XSLT进行自定义。

澹台蕴藉
2023-03-14

我建议创建另一个type Test任务来替换doAfter闭包。

task antTests(type: Test){
  //configuration here
}

我相信此时您可以使用TestReport任务,其方式与之前的尝试类似

task runTestsFromJar( type: TestReport ) {
    destinationDir=file("$buildDir/reports/tests")
    reportOn test, antTests
}

我试图基于现有xml结果文件目录和binary子文件夹生成报告,但也未成功

 类似资料:
  • 我的build.gradle是这样配置的: 下面是一个简单的测试: 当我执行测试时,我在控制台中看到了这一点: 但测试报告中没有任何内容: 我做错了什么?如何将JUnit 5结果集成到测试报告窗口中? 我正在使用Intellij 2016.2

  • 我已经看了一段时间关于stackoverflow的不同文章和答案,但我还没有找到适合我的情况的有效解决方案。我对jacoco、maven和sonar如何一起创建报告的理解肯定有问题,所以我要寻求帮助。 我有一个多模块maven项目,其结构如下(稍微简化了一下): 请允许我扩展一下。父模块只是一个带有整个依赖项及其版本的pom。这个pom被用作level1的每一个其他模块的父模块(直接位于根下面)。

  • 我使用“selenide”、“testng”、“maven”、“eclipse”创建了一些自动化脚本。我试着添加诱惑力测试结果。我遵循了allure-testng-maven说明并更新了pom.xml。 要从eclipse运行测试,我要右键单击pom.xml+“run as”+“Maven test”。这是在“./target/allure-results”文件夹中执行所有testng测试和生成的

  • 我正在为一个项目编写集成测试,在这个项目中,我正在进行HTTP调用,并测试它们是否成功。 因为我没有导入任何模块,也没有直接调用函数coverage.py报告为0%。 我想知道如何为此类集成HTTP请求测试生成覆盖率报告?

  • What the world really needs is more love and less paperwork. — Pearl Bailey 大型的基础设施架构往往是真正的第一受害者。如果你正管理着许多机器, 那么使用 Puppet 的报告设施,可以为你提供一些关于正在发生什么的有价值的信息。 操作步骤 要启用报告,只要将如下的行加入客户端的 puppet.conf 文件: report

  • 本文向大家介绍jmeter如何自动生成测试报告,包括了jmeter如何自动生成测试报告的使用技巧和注意事项,需要的朋友参考一下 1、准备.jmx脚本文件 2、在脚本文件路径下执行cmd命令: 参数解析:   ● -n: 非GUI模式执行JMeter   ● -t: 执行测试文件所在的位置   ● -l: 指定生成测试结果的保存文件,.jtl文件格式   ● -e: 测试结束后,生成测试报告   ●