自動(dòng)化使用的測試框架是這樣的!
自動(dòng)化使用的測試框架是什么?簡述自動(dòng)化框架的設(shè)計(jì)與維護(hù)
測試框架:
python+unittest+requests+ddt+openpyxl+pymysql+logging
python:入門簡單,語法簡潔
unittest :定義一個(gè)測試用例類,具體的方法來維護(hù)測試用例的生命周期,測試場景行為, 測試用例 前置場景,行為,期望結(jié)果,實(shí)際結(jié)果,斷言方法,Setup teardown 方法
requests:接口調(diào)用 ,支持 http 請求的庫,API 簡潔,提供不同的 http 請求方法,支持session,cookies,
ddt :數(shù)據(jù)驅(qū)動(dòng),ddt 類裝飾器,data 測試方法裝飾器 unpack 解包可迭代的數(shù)據(jù)類型普通用戶,數(shù)據(jù)庫,配置文件—(基礎(chǔ)數(shù)據(jù))
openpyxl: 數(shù)據(jù)管理 excel 管理數(shù)據(jù),使用 openpyxl 模塊來進(jìn)行 excel 數(shù)據(jù)的讀和寫
(excle,csv, json, yaml, txt 都可以管理測試數(shù)據(jù))
pymysql:數(shù)據(jù)庫交互,數(shù)據(jù)校驗(yàn)
eval,json:數(shù)據(jù)格式的轉(zhuǎn)換 Eval 將 python 支持的格式轉(zhuǎn)換成對應(yīng)的格式
logging:日志處理, 統(tǒng)一日志輸出格式,渠道,級別,執(zhí)行結(jié)果的記錄,便于定位問題jenkins:持續(xù)集成
00- 框架設(shè)計(jì)思路:數(shù)據(jù)驅(qū)動(dòng)+結(jié)構(gòu)分層(可讀性,可維護(hù)性,可擴(kuò)展性)
數(shù)據(jù)驅(qū)動(dòng):將維護(hù)數(shù)據(jù)與代碼分離,接口調(diào)用行為一致,針對不同的參數(shù)組合驅(qū)動(dòng)不同的測 試場景,減少代碼冗余
結(jié)構(gòu)分層:數(shù)據(jù)層+用例層+邏輯層數(shù)據(jù)層:測試數(shù)據(jù)的支撐 data.xls
用例層:用例的執(zhí)行 test_register.py test_recharge.py
邏輯層:公用的方法的封裝與提取 doexcle.py do_mysql.py http_requests.py logger.py 等模塊
01- 框架設(shè)計(jì)步驟:
準(zhǔn)備測試數(shù)據(jù): EXCEL 表準(zhǔn)備測試用例—excel 數(shù)據(jù)的讀取—參數(shù)值的替換
發(fā)起請求:請求方法(get/post 方法進(jìn)行封裝—URL 的拼接(不同—參數(shù)轉(zhuǎn)化為字典拿到請求的返回值:解析返回值 code,status,msg 信息
02- 斷 言 好處:
1、自動(dòng)化測試用例和手工測試用例的完美結(jié)合,減少重復(fù)工作
2、配置靈活,可以自主切換測試環(huán)境,執(zhí)行測試用例
3、常用功能進(jìn)行封裝,邏輯清晰,易于維護(hù)
4、統(tǒng)一執(zhí)行入口,管理測試用例集:
5、持續(xù)集成,定時(shí)構(gòu)建,快速反饋
03- 具體的在這個(gè)項(xiàng)目中自動(dòng)化怎么應(yīng)用到實(shí)際的,您對自動(dòng)化結(jié)果的分析
答:完成所有的自動(dòng)化測試框架的設(shè)計(jì)和實(shí)現(xiàn)后,進(jìn)行接口測試,然后集成到j(luò)enkins,配置定時(shí)執(zhí)行,生成 html 報(bào)表,查看測試通過率,查看接口的功能每次發(fā)版時(shí),進(jìn)行回歸測試,新功能開發(fā)未提測前。
?本文轉(zhuǎn)載自微信公眾號「 BeeTester視野」,作者「 BeeTester」,可以通過以下二維碼關(guān)注。
轉(zhuǎn)載本文請聯(lián)系「 BeeTester視野」公眾號。