你平時(shí)自動(dòng)化測(cè)試怎么做的
UI和接口相結(jié)合,通常以接口為主地消,UI為輔炉峰。
原因:
- 接口執(zhí)行效率高,可測(cè)試的代碼覆蓋率高脉执,維護(hù)成本低疼阔,屬于低成本,高收益半夷。
- UI自動(dòng)化執(zhí)行效率低竿开,并且容易受其他原因(電腦卡頓,瀏覽器卡頓玻熙,網(wǎng)速等)影響導(dǎo)致腳本執(zhí)行失敗否彩,覆蓋率難以提升,維護(hù)成本較高嗦随,屬于投入較高列荔,收益較低的類(lèi)型。但它的優(yōu)點(diǎn)就是可以完全模擬用戶(hù)行為枚尼,更貼近真實(shí)贴浙。
所以需要兩者都做
接口測(cè)試怎么做的
前置條件:
接口測(cè)試需要項(xiàng)目需求 , 接口文檔/接口規(guī)范;如果沒(méi)有接口規(guī)范/文檔,
也能做署恍,使用抓包工具獲取接口報(bào)文崎溃,看不明白的字段找對(duì)應(yīng)的開(kāi)發(fā)了解;
目的: 了解接口中的字段限制條件: 例如 必填選填,字段類(lèi)型(int,str,date),長(zhǎng)度,特殊字符?字母加數(shù)字?
我們使用jmeter做接口自動(dòng)化測(cè)試盯质,
做接口測(cè)試的時(shí)機(jī):
1袁串、在項(xiàng)目開(kāi)發(fā)過(guò)程中概而,需求評(píng)審結(jié)束后 ,滿足接口測(cè)試需要囱修,可以與開(kāi)發(fā)人員同步開(kāi)發(fā)接口測(cè)試腳本赎瑰,
在后臺(tái)開(kāi)發(fā)完成后可以直接完成接口測(cè)試,不必等前端頁(yè)面開(kāi)發(fā)完成
2破镰、回歸測(cè)試: 接口自動(dòng)化 ,項(xiàng)目發(fā)布之前完成全流程的回歸測(cè)試
做接口測(cè)試的步驟:
1.先寫(xiě)一個(gè)正常流的測(cè)試腳本
2.提取腳本中的參數(shù),修改成變量
3.根據(jù)需要使用自定義變量 或者 csv參數(shù)化 或者 數(shù)據(jù)庫(kù)查詢(xún)提取
4.添加斷言結(jié)果并參數(shù)化;
5. 補(bǔ)充csv里面的業(yè)務(wù)數(shù)據(jù),完善測(cè)試場(chǎng)景.
6.實(shí)現(xiàn)數(shù)據(jù)驅(qū)動(dòng)測(cè)試
你使用接口測(cè)試/jmeter達(dá)到了什么目的/滿足了什么需求/解決了什么問(wèn)題
1餐曼、提高項(xiàng)目迭代開(kāi)發(fā)過(guò)程中的測(cè)試結(jié)果反應(yīng)速度(參考做接口測(cè)試時(shí)機(jī)1、)
2鲜漩、提高回歸測(cè)試的效率源譬,并且提高測(cè)試場(chǎng)景覆蓋率和代碼覆蓋率
3、解決項(xiàng)目中重復(fù)制造測(cè)試數(shù)據(jù)的問(wèn)題(具體方法:將某些業(yè)務(wù)流程封裝成接口腳本孕似,并且參數(shù)化踩娘,
可重復(fù)使用腳本制造測(cè)試數(shù)據(jù)。也可以給不懂接口測(cè)試的人使用)
(接口測(cè)試可以繞過(guò)前端的限制, 還可以讓測(cè)試人員提早介入測(cè)試)
UI自動(dòng)化測(cè)試怎么做的
前置條件:
業(yè)務(wù)成熟鳞青,界面較穩(wěn)定的時(shí)候會(huì)考慮UI自動(dòng)化霸饲,(通常只實(shí)現(xiàn)業(yè)務(wù)主流程为朋,不會(huì)全流程覆蓋)
我們使用selenium+pytest+allure做UI自動(dòng)化測(cè)試臂拓,(selenium封裝了很多操作瀏覽器的方法,還可以執(zhí)行JS等习寸,可以完全模擬人來(lái)做業(yè)務(wù)測(cè)試胶惰。pytest是一個(gè)單元測(cè)試框架,可以用來(lái)控制測(cè)試流程霞溪,實(shí)現(xiàn)參數(shù)化,收集測(cè)試數(shù)據(jù)等孵滞;allure 美化測(cè)試報(bào)告用,編程語(yǔ)言用python
做UI自動(dòng)化的時(shí)機(jī):
1鸯匹、業(yè)務(wù)成熟坊饶,界面較穩(wěn)定
2、項(xiàng)目中測(cè)試重點(diǎn)在UI層面的
做UI自動(dòng)化測(cè)試的步驟:
1殴蓬、整理出需要實(shí)現(xiàn)的UI自動(dòng)化的場(chǎng)景和業(yè)務(wù)流程
2匿级、搭建UI自動(dòng)化環(huán)境(第一次做要這樣,后續(xù)不用只是集成到之前的項(xiàng)目里)
3染厅、編寫(xiě)正常流的測(cè)試腳本
4痘绎、添加斷言
5、增加異常流程的分支判斷及腳本編寫(xiě)
6肖粮、提取腳本中的變量參數(shù)
7孤页、使用xlrd+parametrize實(shí)現(xiàn)數(shù)據(jù)驅(qū)動(dòng)測(cè)試
8、優(yōu)化并重構(gòu)腳本(例如提取業(yè)務(wù)中常用的界面元素涩馆;封裝業(yè)務(wù)中的階段流程行施,使之可以復(fù)用允坚,完成業(yè)務(wù)驅(qū)動(dòng)測(cè)試等)