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

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

轉載自:https://www.cnblogs.com/Snail-offort/p/10818642.html

實現過程:

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

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章