测试积点老人 发表于 2018-11-29 14:53:42

extentreport自定义报告集成到testng项目中,并在jenkins中指定为默认报告

1、集成extentreport

jenkins中安装groovy插件

在任务中添加goovy脚本,填写如下:

System.setProperty("hudson.model.DirectoryBrowserSupport.CSP", "")

在构建后操作中设置html报告,指定报告位置

在项目的xml中指定监听:
<listeners>
    <listener class-name="common.ExtentTestNGIReporterListener"></listener>
    <!--<listener class-name="test.sen.example.ExtentTestNGITestListener"></listener>-->
</listeners>
之前在testng项目中增加了自定义报告extentreport,但是集成到jenkins中之后,发现跑完case,这个报告并没有被更新过。于是查了一下网上,发现运行mvn test时默认是寻找项目test目录下的文件运行的,但我们测试报告的监听器实际放在textng.xml中,因此jenkins中的任务配置为mvn test之后,并不会走testng.xml的监听器去生成需要的报告。为了解决这个问题,需要在pom.xml中指定运行的文件为testng.xml
解决办法:在pom.xml中配置一下内容:<build>
    <plugins>
      <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-compiler-plugin</artifactId>
            <configuration>
                <encoding>UTF-8</encoding>
            </configuration>
      </plugin>
      <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-surefire-plugin</artifactId>
            <version>2.71</version>
            <configuration>
      <suiteXmlFiles>
          <suiteXmlFile>testng.xml</suiteXmlFile>
      </suiteXmlFiles>
</configuration>
      </plugin>
    </plugins>
</build>

页: [1]
查看完整版本: extentreport自定义报告集成到testng项目中,并在jenkins中指定为默认报告