airtest+poco多腳本、多設備批處理運行測試用例自動生成測試報告

一:主要內容

  • 框架功能及測試報告效果
  • airtest安裝、環境搭建
  • 框架搭建、框架運行說明
  • airtest自動化腳本編寫注意事項

 

二:框架功能及測試報告效果

1. 框架功能:

該框架筆者用來作為公司的項目的前端自動化,支援pc和app,本文的air腳本是針對app的,關於pc的腳本會專門在寫一篇文章說明,該框架功能如下:

  • 支援在Android多台設備中批量運行所有後綴為air的測試腳本(因為ios的連接需要macOS,我是windows機所以暫時只連了Android端的ios未做測試)
  • 支援指定某個用例或某幾個用例在某台設備或某幾台設備中進行運行
  • 支援控制測試用例執行順序,默認會將登錄用例排在第一,退出用例排在最後執行,如果想要自定義其他順序,可以在run.py文件中修改sort_cases函數方法即可
  • 支援多腳本多設備運行完成後,生成一份匯總的測試報告,且點擊匯總測試報告中具體的某一個用例,還能查看該用例詳細的airtest報告

 

2. 框架架構說明

 

3. 測試報告效果:

給大家看一下多設備、多腳本的測試報告效果:

點擊詳情效果:

 

三:airtest安裝、環境搭建

1.python環境安裝

這裡不再贅述,安裝並配置好環境變數後,執行python -V查看是否安裝成功

 

2.airtestIDE安裝

airtest安裝很簡單,安裝airtestIDE,從官網下載://airtest.netease.com/

下載後解壓縮到本地,我的本地位置為:G:\AirtestIDE_2020-01-21_py3_win64\AirtestIDE_2020-01-21_py3_win64\AirtestIDE.exe,雙擊exe文件即為啟動airtestIDE工具即可

 

3.包安裝

需要安裝如下包:

pip install airtest

pip install pocoui

如果執行不能安裝成功,則可以使用如下命令:

pip install -i //pypi.douban.com/simple --trusted-host pypi.douban.com airtest
pip install -i //pypi.douban.com/simple/ --trusted-host pypi.douban.com pocoui

 

######如果想用airtest編寫selenium即pc自動化腳本,則還需要安裝如下包:

pip install selenium

pip install pynput

pip install airtest_selenium

關於這一步的安裝也就是 pip install airtest_selenium,也可以從airtest安裝目錄下拷貝該文件夾到python目錄下

我的python目錄為:G:\python3.6.5;

我的airtest安裝目錄為:G:\AirtestIDE_2020-01-21_py3_win64\AirtestIDE_2020-01-21_py3_win64,該路徑下有個airtest_selenium文件夾;

可以拷貝airtest目錄下的airtest_selenium文件夾到python目錄下。

 

######如果想用airtest編寫selenium即pc自動化腳本,除了安裝上面的包,因為airtest-selenium自動化因為需要打開瀏覽器,所以我們還需要配置Google瀏覽器路徑和下載匹配的Google驅動文件

  • airtest設置Google啟動路徑:airtestIDE介面-點擊選項-點擊設置-點擊chrome path-選擇Google安裝路徑一直到chrome.exe文件

 

  • 下載匹配的Google驅動文件:

可以使用該網站下載://npm.taobao.org/mirrors/chromedriver

下載後替換掉airtest根目錄我的路徑是G:\AirtestIDE_2020-01-21_py3_win64\AirtestIDE_2020-01-21_py3_win64下的chromedriver.exe文件即可

 

4.框架版本說明

該框架使用版本如下:

python 3.6.5

airtest 1.1.3

pocoui 1.0.79

pynput 1.6.8

airtestIDE 1.2.3

 

四:框架搭建、框架運行說明

1.框架搭建

該框架搭建很簡單,就是一個python工程:

該工程根目錄下開始時有一個result空文件夾、一個report_tpl.html模板文件、run.py啟動腳本、docs文件夾是我自己放的一些項目描述文檔可有可無,.air文件是自己通過airtestIDE編寫的項目的自動化腳本

2.框架腳本文件說明

run.py   #啟動文件,python run.py即可
report_tpl.html #測試報告模板文件
report.html #自動生成的測試報告文件,會將匯總的執行結果的json數據即下面的summary數據格式與report_tpl.html結合,生成測試報告
result #文件夾,用於存放每個測試用例的執行json結果數據格式為下面的results數據格式
xxx.air #測試用例,所有以.air文件名稱結尾的文件夾都是測試用例
xxx.air/log #每個測試用例的日誌文件,以設備號區分,每個設備號下存放一份測試結果日誌文件
log.html #每個測試用例在每個設備中運行的具體效果,即測試報告中點擊具體測試用例右側彈出的頁面詳情效果
log.txt #每個測試用例在每個設備中運行的json結果數據

3.框架運行編寫建議

執行命令時可以用python run.py運行整個框架
但是寫腳本或者調試腳本時,用airtestIDE來操作,即從airtestIDE中新建編輯.air腳本保存到該框架的根目錄下,調試通過後再用run.py進行批量腳本、批量設備去執行。
這樣就比較清晰