安卓自動化測試:uiautomator2+pytest+allure


本文主要講解使用uiautomator2+pytest+allure進行Android的UI自動化測試,也可以通過寫一些實戰的腳本來更深入學習pytest框架。

學習地址:uiautomator2+pytest+allure測試框架介紹
踩坑記錄:https://www.jianshu.com/p/e9c542632f2c

基礎開發環境:

macOS 10.14
Python 3.7.2

環境搭建

mac電腦自帶python2.7, 所以想用python3.X來安裝相關庫時,建議使用pip3 install ...

pytest
最新版本出到4.0了,但是實際使用4.0和allure有些不兼容.
所以推薦使用3.7版本的pytest

pip3 install pytest==3.7

uiautomator2
uiautomator2也是python的一個類庫,用pip安裝即可.

pip3 install uiautomator2

allure

brew install allure
pip3 install pytest-allure-adaptor

有了測試框架、自動化框架、測試報告,基本上就能coding了。

pytest插件

pytest插件可以實現失敗重試、打印進度、指定順序

pip install pytest-sugar # 打印進度
pip install pytest-rerunfailures # 失敗重試
pip install pytest-ordering # 執行順序

當然插件還有很多,這里就不一一介紹了。

uiautomator2基本操作

啟動服務
執行如下命令:

python3 -m uiautomator2 init 

會在手機上安裝atx-agent.apk並且會在手機上啟動服務:

 
 

手機上也會自動訪問以下地址:


 
 

監聽的是手機上的ip+默認7921.

查看元素

安裝
需要安裝weditor庫

pip3 install weditor

啟動工具

python3 -m weditor

會在自動打開瀏覽器並且展示元素,相當於web版本的uiautomatorviewer,使用起來比較方便:

 
 

無線運行

上邊提到的手機ip,有了這個手機ip就可以進行無線運行腳本
把connect中的方法替換成手機ip就可以了:

# d = ut2.connect(device_name)
d = ut2.connect("192.168.129.93")

demo代碼

原作者的demo,需要安裝下58同城最新版apk.
代碼地址:https://github.com/xinxi1990/atxdemo.git

我的測試代碼,本公司測試小伙伴可以去gitlab 獲取。

報告

allure報告,附幾張跑完用例的截圖:

需要說明的是,查看報告時,請使用Firefox瀏覽器,或在IDE(如PyCharm)用任意瀏覽器打開,如直接使用Chrome打開,報告內容為空。

 
 
 
 

PS:詳細的uiautomator2使用方法可以移步如下地址:
https://github.com/openatx/uiautomator2



本文為轉發分享!如有侵權請聯系作者!


免責聲明!

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



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