移動端自動化 實踐

2021-10-04 08:59:18 字數 1737 閱讀 3109

目標:

1. 入門第乙個案例

2. 基礎操作api(安裝、解除安裝)

3. 定位工具

4. 定位元素

5. 元素操作

前置**:

# server 啟動引數

desired_caps = {}

desired_caps['platformname'] = 'android'

desired_caps['platformversion'] = '5.1'

desired_caps['devicename'] = '192.168.56.101:5555'

# 申明driver物件

driver = webdriver.remote('', desired_caps)

1.5 擴充套件:

# 通過啟動引數來安裝包名 (注意:不能和包名、啟動一起使用)

# 不重置歷史資料(保留之前運算元據,預設:不保留資料)

desired_caps['noreset'] = true

1. 跨應用

方法:driver.start_activity(包名,啟動名)

3. 關閉驅動物件

方法:driver.quit()

回扣:adb uninstall 包名

2.3 判斷是否安裝

2.4 將電腦檔案傳送到手機【了解】

方法:driver.push_file(手機中儲存路徑及檔名,base64data)

base64:需要導包 improt base64

2.5 將手機檔案拉取到電腦【了解】

方法:drvier.pull_file(手機中儲存路徑及檔名)

2.6 獲取頁面結構【重點】

方法:driver.page_source

作用:獲取當前頁面中所有元素的結構,以xml形式返回

重點:只能獲取當前頁面顯示的元素,意味著,要操作非當前螢幕中顯示的元素,必須進行滾屏操作。

四、元素定位

4.1 常用定位方法

1. id

說明:在android中為元素的resource-id屬性

方法:driver.find_element_by_id()

2. class

說明:元素的class屬性

方法:driver.find_element_by_class_name()

3. xpath

說明:利用元素的路徑(xml中路徑)定位

方法:driver.find_element_by_xpath("表示式")

可用的屬性:1. text 2. resource-id 3.class

擴充套件:1. 精準定位 //*[@屬性='屬性值']

2. 模糊定位 //*[contains(@text,'屬性值')]

4. 定位一組元素方法

說明:查詢元素返回格式為list,無論是否找到;

應用:1. 指定下標應用

2. 遍歷應用

driver.find_elements_by_id()、

find_elements_by_class_name()、

find_elements_by_xpath以上三種方法都支援定位一組元素,使用方法相同;

css selector定位問題:

1. pip uninstall selenium

2. pip install selenium==2.48.0

移動端自動化測試基礎

1 移動自動化基礎 3 移動自動化實戰 4 持續整合 1 android 2 ios 3 h5 4 小程式 1 提高效率 如 回歸測試 2 提高質量 相容測試 探索性測試 1 阿里macaca 4 阿里mqc 1 冒煙測試 2 回歸測試 3 功能測試 輔助快速驗證 4 驗收測試 5 移動端效能專項測...

移動端自動化之請求攔截

在做移動端自動化的過程中,難免有時需要檢視移動端傳送給伺服器的請求和響應引數,在pc端我們可以通過f12開發者工具檢視介面的請求詳情,那移動端需要如何檢視呢?今天我們就來聊聊這個話題。安裝其實沒啥特別說明的,選擇你需要安裝的目錄後,一路next就行了 要想攔截移動端裝置的請求,需要做以下幾個操作 首...

WEB UI自動化實踐

宜信技術學院 1.設計背景 隨著it行業的發展,產品愈漸複雜,web端業務及流程更加繁瑣,目前ui測試僅是針對單一頁面,操作量大。為了滿足多頁面功能及流程的需求及節省工時,設計了這款ui 自動化測試程式。旨在提供介面,整合到蝸牛自動化測試框架,方便用例的設計。整個程式是基於 selenium 設計的...