91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Appium+Python自動化測試之運行App程序示例

發布時間:2020-10-04 13:26:23 來源:腳本之家 閱讀:388 作者:zh175578809 欄目:開發技術

在上一篇博客中,已經將環境搭建好了。現在,我們利用搭建的環境來運行一條測試腳本,腳本中啟動一個計算器的應用,并實現加法的運算。

創建模擬器

在運行App之前,首先需要創建一個Android模擬器,也可以使用真機來運行,效果更佳。

進到Android SDK的目錄,雙擊運行AVD Manager.exe

Appium+Python自動化測試之運行App程序示例

點擊Create創建一個Android模擬器

Appium+Python自動化測試之運行App程序示例

輸入一個模擬器名稱,選擇設備類型和API版本,點擊進行創建。創建完成后會顯示當前所有的設備,選擇設備,點擊Start啟動

Appium+Python自動化測試之運行App程序示例

第一次啟動的時候會有點慢,要等幾分鐘,啟動以后就好了,模擬器剛啟動后的界面是這樣的

Appium+Python自動化測試之運行App程序示例

獲取應用的packageName和activityName

在寫測試腳本之前,要知道被測試apk的packageName和要啟動的activityName,如果是第三方的apk,有現成的可以直接使用。這里啟動的是模擬器內置的應用,所以要把apk從模擬器中導出來

模擬器中預置的應用都放在手機的system/app目錄中,使用adb shell命令進入目錄查看計算器應用的apk名稱

Appium+Python自動化測試之運行App程序示例

使用ls *.apk命令列出所有的apk,查找到apk文件為Calculator.apk,然后使用adb pull system/app/Calculator.apk d:/命令將文件導出到電腦中。

將apk導出后,Android SDK中有一個aapt的工具可以用來查看應用的包名和要啟動的activity名稱,工具在SDK的build-tools目錄下,命令格式為”aapt dump badging apk路徑”

Appium+Python自動化測試之運行App程序示例

輸入命令后,第一行的輸入中包含應用的包名

package: name='com.android.calculator2' versionCode='17' versionName='4.2.2-3453820'

在輸入快到結尾的時候,有一行包含應用啟動時打開的activity名稱

Appium+Python自動化測試之運行App程序示例

launchable-activity: name='com.android.calculator2.Calculator' label=” icon='

這樣就得到了packageName和activityName

Capability

Capability是一個字典,配置的是自動化測試的一些必要信息,包含了本次測試的平臺名稱及版本號、啟動的是瀏覽器還是app等,客戶端將這些告訴服務器,服務器根據這些信息創建自動化會話。這里只介紹跟Android平臺相關并且常用的幾個

automationName:定義測試引擎,使用的android-sdk版本小于17時,使用Selendroid,大于等于17時使用Appium,默認是Appium

platformName:測試平臺,通常用于移動設備,值有:Android、IOS、FirefoxOS

platformVersion:測試平臺版本,根據設備的固件版本指定,例如Android的4.2、IOS的7.1

deviceName:設備名稱

app:要安裝的app的文件路徑,可以是本地的絕對路徑,也可以是遠程網絡路徑

browserName:啟動的瀏覽器名稱,測試的是web應用時指定,Android平臺設置為Chrome

newCommandTimeout:為了結束Appium會話,會設置一個等待從客戶端發送命令的超時時間,默認為60秒,一般不需要設置

autoLaunch:測試時是否需要自動運行app

appPackage:設置app的包名,告訴Appium需要啟動的app

appActivity:設置啟動的Activity

appWaitActivity:要等待的Activity

appWaitPackage:要等待的appPackage

unicodeKeyboard:是否使用unicode鍵盤輸入,在輸入中文字符和unicode字符時設置為true

resetKeyboard:是否將鍵盤重置為初始狀態,設置了unicodeKeyboard時,在測試完成后,設置為true,將鍵盤重置

上述的幾個Capability只是在測試中經常用到的,更多的Capability在用到的時候可以在網上查閱

編寫測試腳本

新建test.py,輸入下面的代碼

# -*- coding: utf-8 -*-

from appium import webdriver

desired_caps = {
    'platformName': 'Android',
    'deviceName': 'emulator-5554',
    'platformVersion': '4.2',
    'appPackage': 'com.android.calculator2',
    'appActivity': 'com.android.calculator2.Calculator'
  }
driver = webdriver.Remote('http://127.0.0.1:4723/wd/hub', desired_caps)
driver.find_element_by_name('7').click()
driver.find_element_by_name('+').click()
driver.find_element_by_name('8').click()
driver.find_element_by_name('=').click()

保存文件,打開Appium,點擊右上角的三角形按鈕啟動Appium

Appium+Python自動化測試之運行App程序示例

出現> info: Welcome to Appium v1.4.16 (REV ae6877eff263066b26328d457bd285c0cc62430d)這行信息后,就表示Appium啟動成功了

Appium+Python自動化測試之運行App程序示例

Appium啟動成功后,運行測試腳本,模擬器會運行計算器應用,計算加法

Appium+Python自動化測試之運行App程序示例

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持億速云。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

白河县| 旌德县| 承德市| 名山县| 吉林省| 宜州市| 仪陇县| 札达县| 江油市| 华宁县| 内江市| 钟祥市| 延寿县| 卓资县| 田林县| 恩施市| 清苑县| 扶风县| 永兴县| 商都县| 策勒县| 革吉县| 寿阳县| 思南县| 五家渠市| 阿坝县| 长岛县| 邮箱| 新兴县| 麻江县| 桃源县| 武邑县| 木兰县| 丰顺县| 雷山县| 连城县| 临江市| 介休市| 新河县| 广南县| 华蓥市|