Jenkins自動執行python腳本輸出測試報告


前言

在用python做自動化測試時,我們寫好代碼,然后需要執行才能得到測試報告,這時我們可以通過 Jenkins 來進一步完成自動化工作。

借助Jenkins,我們可以結合 Git/SVN 自動拉取代碼,可以設置定時構建,接着就可以定時觸發執行腳本,得到並查看測試報告,最后還可以配置發送郵件等。

今天我們就來學習下,如何結合 Git/SVN 自動拉取代碼,通過構建來自動執行python腳本輸出測試報告。

Jenkins創建Job

  • 新建一個自由風格的項目

登錄Jenkins后,選擇新建任務,新建一個自由風格的項目。

創建項目

  • 設置源碼管理

在源碼管理下,選擇Git。

源碼管理

Repository URL指代碼倉庫地址,復制Github倉庫的地址填入即可。

Github倉庫地址

注意:如果是SSH方式鏈接的,點右上角的SSH地址,使用SSH方式的話需要設置SSH Key。

如果選擇的時候沒有顯示Git賬戶,則需要添加一個,在添加界面填上自己Git倉庫登錄的賬號和密碼,如下:

添加Git賬戶

  • 構建操作

接着,我們可以設置構建觸發器,構建步驟等操作。定時構建語法,這里不多介紹,大家可以去網上查找學習。

設置定時構建

設置構建步驟,如下:

構建步驟

執行構建命令

在這里,需要輸入執行命令,也就是說Jenkins將Git倉庫代碼下載之后,我們要怎么通過命令去執行腳本,這個根據自己執行腳本的情況填寫即可,這里和我們手工執行腳本的操作是一致的。

構建Job

上面設置完成之后,保存即可。回到工作台,進入任務模塊點擊立即構建,我們測試一下構建執行腳本是否正常。

立即構建

構建成功

如上,如果構建顯示為藍色,則表示構建成功,構建之后可以點擊構建的任務圖標,查看具體的構建日志,控制台輸出等相關信息。

查看控制台輸出

復制上面的路徑,然后到Linux下查看一下。

[root@wintest test_demo]# cd /root/.jenkins/workspace/test_demo
[root@wintest test_demo]# ls
api  common  config  data  log  README.md  report  run_all.py  testcases
[root@wintest test_demo]# 

到這里,我們已經通過Jenkins結合Git自動拉取代碼,通過構建來自動執行python腳本。

安裝HTML報告插件

上面我們已經通過構建執行python腳本,得到測試報告,但不能在Jenkins界面上直接查看報告。對此,我們可以安裝一個插件來達到這個目的。

插件管理

進入插件管理界面,選擇可選插件,然后搜索插件:HTML Publisher,直接安裝即可。

安裝插件

安裝成功

安裝完成之后,返回工作台。找到創建的Job,重新設置 構建后操作步驟,選擇 Publish HTML reports

設置構建后操作

設置顯示報告

注意:在這里,我們通過執行python腳本生成的測試報告,如果包含詳細時間的(比如這樣 TestReport_20200112151736.html),可能不太好弄,因此我這里設置生成的測試報告是固定的名稱,這樣就方便多了。

查看測試報告

配置完成后,構建成功就可以看到測試報告了。

HTML報告

查看報告

點擊查看報告后,發現報告和我們手動在瀏覽器打開的不一樣,這是因丟失了css樣式導致的,解決這個問題的方法有多種,可以參考網上的博客:jenkins 生成html報告顯示樣式問題

我解決的方法如下:

首先,安裝 Groovy 插件,重啟Jenkins。

安裝Groovy插件

接着修改一下項目的配置,增加構建步驟:Execute system Groovy script,輸入內容:System.setProperty("hudson.model.DirectoryBrowserSupport.CSP", ""),最后保存。

Execute system Groovy script

上面設置完成,返回工作台,需要重新構建項目才生效,構建后再次查看報告,可以看到顯示正常了。

正常顯示的報告

OK,到這里我們已成功實現Jenkins自動執行python腳本,輸出並可直接在界面上查看測試報告。


免責聲明!

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



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