ReportNG測試報告的定制修改(一)


   目前筆者接觸的自動化測試報告有兩種,這兩種都是開源的,第一種是ReportNG,第二種是ExtentReports,兩種風格各異,ExtentReports自帶餅圖,頁面很炫,但是我們今天講的是ReportNG。

  首先來看下默認的ReportNG報告,是不是發現有個中文亂碼(此圖來源於網絡),首先我們來解決下這個亂碼問題。

1.首先從GitHub拉取ReportNG源碼,地址:https://github.com/dwdyer/reportng,下載好后解壓。

  

 

2.導入到編輯器如Eclipse,注意:import的時候請選擇以Maven項目import,請選擇reportng-master目錄下的reportng文件,作為新的project

 (1)點擊File->import

(2)選擇Existing Maven Projects,點擊Next

(3)選擇解壓好的ReportNG項目,點擊Finish

導入后的項目如圖所示,導入后切記忙於修改源代碼,就算你把代碼改爛了也改不對,而且會報亂七八糟的錯誤,讓你懷疑人生

3.項目導入后,修改項目成如下圖所示目錄,且添加相應jar包到lib

(1)報告中亂碼的解決辦法,修改AbstractReporter中的generateFile這個方法中的代碼如下

(2)修改測試報告名稱,修改ReportMetadata中DEFAULT_TITLE

(3)修改默認generatedBy,修改reportng.properties中的generatedBy

(4)修改默認日期顯示,修改ReportMetadata.java中的DATE_FORMAT,TIME_FORMAT

(5)修改pom.xml

 1 <?xml version="1.0" encoding="UTF-8"?>
 2 <project xmlns="http://maven.apache.org/POM/4.0.0"
 3          xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
 4          xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
 5     <modelVersion>4.0.0</modelVersion>
 6 
 7     <groupId>reportng</groupId>
 8     <artifactId>reportng</artifactId>
 9     <version>1.8.8</version>
10     <dependencies>
11         <dependency>
12             <groupId>org.apache.httpcomponents</groupId>
13             <artifactId>httpclient</artifactId>
14             <version>4.3.6</version>
15         </dependency>
16 
17         <dependency>
18             <groupId>org.testng</groupId>
19             <artifactId>testng</artifactId>
20             <version>6.9.6</version>
21         </dependency>
22 
23         <dependency>
24             <groupId>org.uncommons</groupId>
25             <artifactId>reportng</artifactId>
26             <version>1.1.4</version>
27             <scope>test</scope>
28             <exclusions>
29                 <exclusion>
30                     <groupId>org.testng</groupId>
31                     <artifactId>testng</artifactId>
32                 </exclusion>
33             </exclusions>
34         </dependency>
35 
36         <dependency>
37             <groupId>com.google.inject</groupId>
38             <artifactId>guice</artifactId>
39             <version>3.0</version>
40             <scope>test</scope>
41         </dependency>
42     </dependencies>
43 
44     <build>
45         <plugins>
46             <plugin>
47                 <groupId>org.apache.maven.plugins</groupId>
48                 <artifactId>maven-surefire-plugin</artifactId>
49                 <version>2.18.1</version>
50                 <configuration>
51                     <properties>
52                         <property>
53                             <name>usedefaultlisteners</name>
54                             <value>false</value>
55                         </property>
56                         <property>
57                             <name>listener</name>
58                             <value>org.uncommons.reportng.HTMLReporter, org.uncommons.reportng.JUnitXMLReporter</value>
59                         </property>
60                     </properties>
61                    <!--  <suiteXmlFiles>
62                         <suiteXmlFile>testng.xml</suiteXmlFile>
63                     </suiteXmlFiles> -->
64                     <workingDirectory>target/</workingDirectory>
65                 </configuration>
66             </plugin>
67         </plugins>
68     </build>
69     <properties>
70         <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
71     </properties>
72 </project>
View Code

 4.打包,pom.xml右擊選擇Run As->Maven install,控制台顯示BUILD SUCCESS,則構建成功,刷新當前項目,在target目錄下會生成一個jar文件:reportng-1.8.8.jar

5.測試,新建一個測試項目(大家請隨意),導入相應jar包,選擇運行testng.xml,記得添加

<listeners>
        <listener class-name="org.uncommons.reportng.HTMLReporter" />
        <listener class-name="org.uncommons.reportng.JUnitXMLReporter" />
    </listeners>

 

 6.報告展示,修改后的jar包已上傳到群共享,需要的小伙伴可以加群自己下載哦。

 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM