一個完整的Appium手機自動化測試實例


 

實現過程:

1.使用環境

appium 、安卓SDK 、python

本文重點是自動化實例,環境搭建過程省略。

2.找到被測APP的包名和Activity Name

手機連接上電腦后,在DOS環境先使用adb devices命令確認手機與電腦連接正常。

然后 打開被測APP,輸入下面的命令,就會顯示出APP的包名與ActivityName

本人最常使用第3條命令

     adb shell dumpsys window w | findstr \/ | findstr name=

或 adb shell dumpsys window |findstr mCurrent

或 adb shell "dumpsys window w|grep \/|grep name=|sed 's/mSurface=Surface(name=//g'|sed 's/)//g'|sed 's/ //g'"

   

3.使用Python編寫自動化腳本

啟動Appium,啟動pycharm,開始編寫自動化腳本。寫腳本之前要先導入selenium庫,可以使用pip install selenium命令直接在DOS環境安裝,也可以通過pycharm Project Interpreter安裝。

from selenium import webdriver
import time

#初始化信息
desired_caps={}
desired_caps["platformName"]="Android"
desired_caps["platformVersion"]="6.0"
desired_caps["deviceName"]="HuaWeiP9"
desired_caps["appPackage"]="com.taobao.taobao"
desired_caps["appActivity"]="com.taobao.tao.homepage.MainActivity3"


driver = webdriver.Remote("http://127.0.0.1:4723/wd/hub",desired_caps)
#在搜索框輸入關鍵詞
driver.find_element_by_id("com.taobao.taobao:id/home_searchedit").click()
# 等待時間
time.sleep(3)
driver.find_element_by_id("com.taobao.taobao:id/searchEdit").send_keys("adidas")
time.sleep(3)
driver.find_element_by_id("com.taobao.taobao:id/searchbtn").click()
#截圖
driver.quit()

 

 

其它:

1.通過UI Automator Viewer(安卓SDK自帶的工具)可以查看APP頁面元素屬性,進而定位元素,實現各種操作

 2.運行下面這一行代碼時報錯:

driver.find_element_by_id("com.taobao.taobao:id/searchEdit").send_keys("adidas")

Message: Parameters were incorrect. We wanted {"required":["value"]} and you sent ["text","sessionId","id","value"]

原因:

selenium新版導致的問題,降級后解決:

最新的版本卸載,安裝3.3.1這個版本

1. pip uninstall selenium
2. pip install selenium==3.3.1


注意!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系我们删除。



 
粤ICP备14056181号  © 2014-2020 ITdaan.com