自動化測試報告淺談之ExtentReports


  我們在進行自動化測試時,往往需要有相應的測試報告,比如junit,testng,reportng等等,有會有自帶的測試報告,那為什么我要在這邊提ExtentReports?首先,我們來看看其它幾種測試報告是什么樣子的

     1.junit

  

  2.testng

  

  3.reportng

  

   這些自帶的報告不夠美觀,可讀性差,這樣的報告拿出去估計沒人願意看吧,當然我們只是談以上幾種報告,如果要得到非常美觀的報告只能自己動手去做了,這就要有良好的編碼功底。費話不多說我們再來看看今天要講的ExtentReports,上圖先

                              圖一

 

圖二

圖三

  ExtentReports究竟是什么?讓我們來看看,官方地址:http://extentreports.relevantcodes.com/,ExtentReports是由Anshoo Arora創造的一個基於HTML5報告,它提供了Java與.NET類庫,非常容易使用和創建出漂亮的自動化測試報告。既可以顯示測試測試的Summary與步驟詳細信息(狀態、錯誤等)也提供分析Dashbord,這些頁面使用Tab標簽鏈接進行分離方便快速切換查看等優點。我在這邊用的是2.41.1版本,但報告顯示的卻是2.41.0,這個后面有空再看,不影響本次項目。先去官網下載extentreports-java-v2.41.1.jar

  我們新建一個maven項目,在pom.xml中添加

  <!-- https://mvnrepository.com/artifact/com.aventstack/extentreports -->
  <dependency>
  <groupId>com.aventstack</groupId>
  <artifactId>extentreports</artifactId>
  <version>2.41.1</version>
  </dependency>

  1.初始化一些ExtentReports,其中配置了報告的生成路徑,以及一些其他一些信息,這里為了在監聽中調用extent我在這里寫了一個get方法

  2.重寫testng監聽

  

  上面是把extentreports的報告的初始方法寫在driver的初始方法中,寫報告的方法在testng的 onTest中,這次將這些方法全都拆出來,寫在一個方法類中,這個類重現實現了testng IReporter接口中的 generateReport 方法同時加入了失敗自動截圖方法。

  1.首先說一下自動截圖方法的實現(截圖實現類):

  2.為了在testng 的監聽中調用截圖方法,所以封裝了一個BaseTestcase類 。

  3.實現extentreports生成的監聽類ExtentReporterNGListener

  4.testng.xml 文件配置:

  下面我們再說一下extent的一個服務 extentX,這是一個web程序,可以讀取數據庫(mongodb、redis)中的數據,來生成報告,只要我們把測試的數據都存儲在數據庫中,就會看到一個很完美的集合報告,先下載安裝node.js和mongodb,然后安裝兩個軟件,node.js安裝比較簡單,這邊就不介紹了,我們來看下安裝mongodb,下載mongodb安裝文件,安裝完成后,在根目錄下新建db文件夾,用來存放mongodb的數據庫文件,執行以下命令(D:\Program Files\MongoDB\Server\3.2\bin>mongod -dbpath "D:\Program Files\MongoDB\db"),啟動mongodb。你也可以在瀏覽器中查看mongodb是否啟動。

 

下面我們來安裝extentX,下載地址:https://github.com/anshooarora/extentx,下載完成后解壓,先進入connections.js,修改以下內容

extent: {
  adapter: 'sails-mongo',
  host: 'localhost', // host where MongoDB is running
  port: 27017, // port where MongoDB is running
  database: 'extent'
}

命令行進入到extentx根目錄,執行以下命令:npm install,安裝進程比較慢,慢慢等。

以上操作都完成后我們直接運行testng.xml,下面是eclipse控制台顯示的內容和cmd命令行顯示的內容

數據庫中如下圖所示

 

注:參考文章地址:http://www.cnblogs.com/llining/p/5669981.html,作者:笑笑唔萊


免責聲明!

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



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