溫馨提示×

溫馨提示×

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

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

Python+appium框架原生代碼實現(xiàn)App自動化測試的示例分析

發(fā)布時間:2021-11-15 15:34:28 來源:億速云 閱讀:153 作者:柒染 欄目:大數(shù)據(jù)

本篇文章為大家展示了Python+appium框架原生代碼實現(xiàn)App自動化測試的示例分析,內(nèi)容簡明扼要并且容易理解,絕對能使你眼前一亮,通過這篇文章的詳細(xì)介紹希望你能有所收獲。

step1:首先介紹下python+appium的框架結(jié)構(gòu),如下截圖所示

Python+appium框架原生代碼實現(xiàn)App自動化測試的示例分析

(1):apk目錄主要放置待測app的apk資源;

(2):config目錄主要放置配置文件信息,包含:數(shù)據(jù)庫連接配置、UI自動化腳本中所需的頁面元素信息及app啟動信息、自動化報告郵件發(fā)送配置信息、接口請求的對應(yīng)的url信息等【大家可根據(jù)待測app的功能添加或減少配置文件信息】。

(3):report目錄主要放置測試完成后生成的測試報告信息;

(4):src目錄下包含的目錄如下

       common目錄:app啟動方法的封裝文件信息;數(shù)據(jù)庫增刪改查實際方法的封裝文件信息;讀取config配置文件中元素信息的工具類方法;日志類的封裝方法;發(fā)送郵件的配置文件信息【大家可根據(jù)待測app的具體功能添加或減少公共方法類】;

        functions目錄:對于自動化測試過程中需要對頁面元素進(jìn)行獲取的方法工具類的封裝;

        log目錄:每次執(zhí)行測試腳本后生成的日志信息會存放到該目錄下;

        runner目錄:生成測試報告的公有方法的引用;自動化腳本的批量執(zhí)行配置信息;

        testcase目錄:待測app具體的需測試功能點的測試腳本代碼信息;

step2:接下來介紹的是框架目錄下每個文件的具體內(nèi)容

Python+appium框架原生代碼實現(xiàn)App自動化測試的示例分析

(1):依據(jù)上面截圖可對應(yīng)到step1中描述的各個目錄下所包含的文件的具體功能;

(2):常用的方法就不再贅述,下面將介紹幾個不常見的.py文件進(jìn)行具體內(nèi)容的詳細(xì)講解:

       【1】config目錄中的element.ini文件內(nèi)容如下(主要存放頁面元素信息):

Python+appium框架原生代碼實現(xiàn)App自動化測試的示例分析

        上面截圖中展示的是登錄被測app時,需要獲取到頁面上的元素的信息,可以使用id,class,xpath等方法,具體的定位元素的方法可以依據(jù)待測app來選擇,只要可以獲取到元素信息即可(請按照截圖中的格式來定義)。

       【2】src目錄下common目錄下的appium_start文件內(nèi)容如下(appium服務(wù)啟動封裝文件):

Python+appium框架原生代碼實現(xiàn)App自動化測試的示例分析

        該文件會引用iniHelper文件對element.ini文件頁面元素信息的獲取信息,來獲得啟動時必需的參數(shù)信息,后面會具體貼出iniHelper文件的內(nèi)容,建議大家動手敲下示例代碼,印象會更深刻。

      【3】src目錄下common目錄下的iniHelper文件內(nèi)容如下(讀取ini配置文件工具類):

Python+appium框架原生代碼實現(xiàn)App自動化測試的示例分析

        該.py文件中iniHelper方法主要是獲取ini配置文件中單個屬性的值;

        該.py文件中ini_sections方法主要是獲取ini配置文件中某個功能模塊所有的屬性名稱和對應(yīng)的值,以字典的格式返回結(jié)果;

     【4】src目錄下functions目錄下的baseAction文件內(nèi)容如下(頁面基本元素獲取方法的封裝):

Python+appium框架原生代碼實現(xiàn)App自動化測試的示例分析

      該文件內(nèi)容對于頁面元素定位的方法進(jìn)行封裝,此示例共例舉了7種元素定位方法,在測試過程中如果有其他定位方法可自行添加到該方法中。

      【5】src目錄下testcase目錄下的app_checklist文件內(nèi)容如下(具體待測功能的自動化腳本編寫):

Python+appium框架原生代碼實現(xiàn)App自動化測試的示例分析

      此處示例以登錄功能為例,先獲取登錄所需元素信息,包含基本的用戶名和密碼、登錄提交等元素信息,獲取到元素信息后再對元素進(jìn)行模擬操作,如:直接點擊、輸入測試數(shù)據(jù)、清除測試數(shù)據(jù)等操作,登錄完成后需要校驗是否登錄成功,并記錄相應(yīng)的日志信息。

step3:整體思路說明:

(1):使被測功能的腳本代碼更加簡潔,方便維護腳本,需要將測試數(shù)據(jù)與程序進(jìn)行分離;

(2):頁面元素信息可以封裝到配置文件中,并封裝對應(yīng)的讀取配置文件的方法,在測試腳本需要使用時直接調(diào)用;

(3):公共方法類,如:數(shù)據(jù)庫連接配置信息及對數(shù)據(jù)庫進(jìn)行增刪改查操作時,都可以封裝到公共方法中,便于維護,使用時直接引用即可;

(4):具體實際操作過程中,可以依據(jù)具體測試需求對框架作出相應(yīng)的調(diào)整,目的是讓腳本更加清晰化,且便于維護,易于推廣給測試同行使用;

上述內(nèi)容就是Python+appium框架原生代碼實現(xiàn)App自動化測試的示例分析,你們學(xué)到知識或技能了嗎?如果還想學(xué)到更多技能或者豐富自己的知識儲備,歡迎關(guān)注億速云行業(yè)資訊頻道。

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI