最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

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

 更新時間:2019年01月23日 11:29:53   作者:zh175578809  
這篇文章主要介紹了Appium+Python自動化測試之運行App程序示例,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧

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

創(chuàng)建模擬器

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

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

點擊Create創(chuàng)建一個Android模擬器

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

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

獲取應用的packageName和activityName

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

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

使用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路徑”

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

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

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

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

這樣就得到了packageName和activityName

Capability

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

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

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

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

deviceName:設備名稱

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

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

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

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

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

appActivity:設置啟動的Activity

appWaitActivity:要等待的Activity

appWaitPackage:要等待的appPackage

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

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

上述的幾個Capability只是在測試中經(jīng)常用到的,更多的Capability在用到的時候可以在網(wǎng)上查閱

編寫測試腳本

新建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

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

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

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

相關文章

  • Pandas數(shù)據(jù)分析-pandas數(shù)據(jù)框的多層索引

    Pandas數(shù)據(jù)分析-pandas數(shù)據(jù)框的多層索引

    這篇文章主要介紹了Pandas數(shù)據(jù)分析-pandas數(shù)據(jù)框的多層索引,pandas數(shù)據(jù)框針對高維數(shù)據(jù),也有多層索引的辦法去應對具體詳細的內容介紹需要的小伙伴可以參考一下
    2022-08-08
  • 利用Python對中國500強排行榜數(shù)據(jù)進行可視化分析

    利用Python對中國500強排行榜數(shù)據(jù)進行可視化分析

    這篇文章主要介紹了利用Python對中國500強排行榜數(shù)據(jù)進行可視化分析,從不同角度去對數(shù)據(jù)進行統(tǒng)計分析,可視化展示,下文詳細內容介紹需要的小伙伴可以參考一下
    2022-05-05
  • Python如何實現(xiàn)一個CLI命令行功能

    Python如何實現(xiàn)一個CLI命令行功能

    Click是一個強大的Python庫,專門用于快速創(chuàng)建命令行界面,本文將詳細介紹Click庫的功能以及CLI的應用場景,并通過具體代碼示例展示如何實現(xiàn)CLI,有需要的可以了解下
    2025-02-02
  • Pycharm常用快捷鍵總結及配置方法

    Pycharm常用快捷鍵總結及配置方法

    這篇文章主要介紹了Pycharm常用快捷鍵總結及配置方法,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下
    2020-11-11
  • 簡單了解python元組tuple相關原理

    簡單了解python元組tuple相關原理

    這篇文章主要介紹了簡單了解python元組tuple相關原理,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下
    2019-12-12
  • Scrapy的Pipeline之處理CPU密集型或阻塞型操作詳解

    Scrapy的Pipeline之處理CPU密集型或阻塞型操作詳解

    這篇文章主要介紹了Scrapy的Pipeline之處理CPU密集型或阻塞型操作詳解,Twisted框架的reactor適合于處理短的、非阻塞的操作,Twisted提供了線程池來在其他的線程而不是主線程(Twisted的reactor線程)中執(zhí)行慢的操作,需要的朋友可以參考下
    2023-10-10
  • 詳解Python繪圖Turtle庫

    詳解Python繪圖Turtle庫

    Turtle庫是Python語言中一個很流行的繪制圖像的函數(shù)庫,這篇文章主要介紹了Python繪圖Turtle庫的相關知識,需要的朋友可以參考下
    2019-10-10
  • Python?Flask?上傳文件測試示例

    Python?Flask?上傳文件測試示例

    這篇文章主要為大家介紹了Python?Flask?上傳文件測試的方法示例,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2022-07-07
  • matplotlib之輕松解決中文亂碼的問題

    matplotlib之輕松解決中文亂碼的問題

    這篇文章主要介紹了matplotlib之輕松解決中文亂碼的問題,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2023-09-09
  • Python Selenium網(wǎng)頁自動化利器使用詳解

    Python Selenium網(wǎng)頁自動化利器使用詳解

    這篇文章主要為大家介紹了使用Python Selenium實現(xiàn)網(wǎng)頁自動化示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2023-12-12

最新評論

永春县| 达尔| 陆良县| 兰溪市| 浠水县| 桑植县| 嘉兴市| 曲周县| 甘德县| 宣恩县| 新昌县| 宁武县| 日喀则市| 加查县| 桃江县| 瑞安市| 舟曲县| 长葛市| 沧源| 桂林市| 铜山县| 天全县| 密云县| 辰溪县| 巩留县| 石林| 衡山县| 呈贡县| 吉林市| 中山市| 拉孜县| 乐平市| 新乐市| 资溪县| 重庆市| 玛多县| 武安市| 偏关县| 高邮市| 浦城县| 山东省|