Appium+python自動化(三十八) - Appium自動化測試框架綜合實踐 - 框架簡介-助你衝擊高薪,迎娶白富美(超詳解)
簡介
好久沒有更新部落格了,博友們是不是有點等不及了。不好意思啊,中秋節過後太忙了,這篇是好不容易抽點零碎時間寫的。從這一篇開始小夥伴或者童鞋們,就跟隨巨集哥的腳步,一步步的從無到有,從0到1的搭建一個完整的python+appium自動化測試框架。
框架背景
前面我們已經學習了Appium各種元素定位,手勢操作、資料配置、Pageobject設計模式等等。但是前面的功能都是比較零散的,沒有整體融合起來,實際專案實踐過程中我們需要綜合運用,那麼本章節我們將結合之前所學的內容,從0到1搭建一個完整的python+appium自動化測試框架。
框架功能
- 業務功能的封裝
- 測試用例封裝
- 測試包管理
- 截圖處理
- 斷言處理
- 日誌獲取
- 測試報告生成
- 資料驅動
- 資料配置
- Win10 64Bit
- Appium 1.7.2
- 考研幫App Android版3.1.0
- 夜神模擬器 Android 5.1.1
測試案例
測試環境
1.巨集哥的系統環境是Windows 10版本 64位系統
2.巨集哥的dk版本:"1.8.0_181"
3.巨集哥的appium版本:1.4.16
4.selenium:3.141.0
安裝selenium:
輸入指令pip install selenium
驗證安裝成功:pip show selenium
5.測試裝置:Android 5.1.1 (不能低於5.0版本)
6.Python:3.7.2
命令:python -V ,回車即可。
7.測試App:
考研幫Android app V3.1.0
覆蓋用例
1.登入場景
使用者名稱 |
密碼 |
北京巨集哥2018 |
bjhg2018 |
北京巨集哥2019 |
bjhg2019 |
666 |
222 |
2.程式碼實現
3.參考程式碼
test_login.py
# coding=utf-8 # 1.先設定編碼,utf-8可支援中英文,如上,一般放在第一行 # 2.註釋:包括記錄建立時間,建立人,專案名稱。 ''' Created on 2019-9-25 @author: 北京-巨集哥 Project: Appium自動化測試框架綜合實踐 - 框架簡介 - 登入 ''' # 3.匯入模組 from common.myunit import StartEnd from businessView.loginView import LoginView import unittest import logging class TestLogin(StartEnd): csv_file='../data/account.csv' @unittest.skip('test_login_bjhg2019') def test_login_bjhg2019(self): logging.info('======test_login_bjhg2019=====') l=LoginView(self.driver) data=l.get_csv_data(self.csv_file,2) l.login_action(data[0],data[1]) self.assertTrue(l.check_loginStatus()) # @unittest.skip('skip test_login_bjhg2018') def test_login_bjhg2018(self): logging.info('======test_login_bjhg2018=====') l=LoginView(self.driver) data = l.get_csv_data(self.csv_file, 1) l.login_action(data[0], data[1]) self.assertTrue(l.check_loginStatus()) @unittest.skip('test_login_error') def test_login_error(self): logging.info('======test_login_error=====') l = LoginView(self.driver) data = l.get_csv_data(self.csv_file, 3) l.login_action(data[0], data[1]) self.assertTrue(l.check_loginStatus(),msg='login fail!') if __name__ == '__main__': unittest.main()
1.註冊場景
註冊一個新的賬號(賬戶和密碼可以隨機生成),完善院校和專業資訊 (如:院校:上海-同濟大學 專業:經濟學類-統計學-經濟統計學)
2.程式碼實現
3.參考程式碼
test_register.py
# coding=utf-8 # 1.先設定編碼,utf-8可支援中英文,如上,一般放在第一行 # 2.註釋:包括記錄建立時間,建立人,專案名稱。 ''' Created on 2019-9-25 @author: 北京-巨集哥 Project: Appium自動化測試框架綜合實踐 - 框架簡介 - 註冊 ''' # 3.匯入模組 from common.myunit import StartEnd from businessView.registerView import RegisterView import logging,random,unittest class RegisterTest(StartEnd): def test_user_register(self): logging.info('======test_user_register======') r=RegisterView(self.driver) username = 'zxw2018' + 'fly' + str(random.randint(1000, 9000)) password = 'zxw2018' + str(random.randint(1000, 9000)) email = '51zxw' + str(random.randint(1000, 9000)) + '@163.com' self.assertTrue(r.register_action(username,password,email)) if __name__ == '__main__': unittest.main()
框架設計圖
這裡巨集哥根據兩個場景設計了大致框架
小結
今天就分享這麼多吧,後邊就由巨集哥手把手的教你從0到1的搭建一個完整的python+appium的自動化測試框架。
個人公眾號 微信群 (微信群已滿100,可以加巨集哥的微信拉你進群,請備註:進群)
您的肯定就是我進步的動力。如果你感覺還不錯,就請鼓勵一下吧!記得點波 推薦 哦!!!(點選右邊的小球即可!(^__^) 嘻嘻……)