淺談接口自動(dòng)化測(cè)試的可擴(kuò)展性、維護(hù)性

發(fā)布時(shí)間:2020-07-21

隨著自動(dòng)化測(cè)試的發(fā)展,自動(dòng)化測(cè)試工具、測(cè)試框架也越來(lái)越豐富,比如:

自動(dòng)化測(cè)試工具的分類:Web自動(dòng)化測(cè)試工具,性能自動(dòng)化測(cè)試工具,接口自動(dòng)化測(cè)試工具。

自動(dòng)化測(cè)試框架:錄制回放測(cè)試框架,測(cè)試庫(kù)構(gòu)架框架,數(shù)據(jù)驅(qū)動(dòng)的自動(dòng)化測(cè)試框架,關(guān)鍵字驅(qū)動(dòng)的自動(dòng)化測(cè)試框架。

隨著測(cè)試工具的多樣化發(fā)展,自動(dòng)化測(cè)試的成本、周期都隨之縮小,但也帶來(lái)了如何選擇的問(wèn)題。

接口自動(dòng)化框架

自動(dòng)化測(cè)試工具的選擇:

框架、工具的選擇是我們確認(rèn)開(kāi)展自動(dòng)化后首先面臨的問(wèn)題。自動(dòng)化測(cè)試開(kāi)展一定要結(jié)合被測(cè)系統(tǒng)的特點(diǎn)進(jìn)行選擇,不顧被測(cè)系統(tǒng)(系統(tǒng)框架)特性、場(chǎng)景而盲目選擇自動(dòng)化測(cè)試框架(或工具), 它是沒(méi)有靈魂的,自動(dòng)化失敗概率會(huì)相對(duì)高很多。

首先我們需要明白自動(dòng)化測(cè)試框架更傾向于一種設(shè)計(jì)思想 ,這種思想指導(dǎo)工具的使用或者自研開(kāi)發(fā),并且不是只能使用僅僅一種框架,結(jié)合被測(cè)系統(tǒng)本身特性一般是選擇多種測(cè)試框架的組合,來(lái)滿足測(cè)試和設(shè)計(jì)需求(開(kāi)發(fā)、維護(hù)角度)。

很多種自動(dòng)化測(cè)試框架(或工具)都可以開(kāi)展自動(dòng)化, 所以在自動(dòng)化框架(或工具)的選擇上,以被測(cè)對(duì)象為本來(lái)選擇自動(dòng)化框架(或工具)。

結(jié)合業(yè)務(wù)特點(diǎn),我們?cè)跍y(cè)試庫(kù)構(gòu)架框架的基礎(chǔ)上再采用數(shù)據(jù)驅(qū)動(dòng)框架,將其單的查詢邏輯與測(cè)試數(shù)據(jù)分離,這樣我們?cè)匍_(kāi)發(fā)其他用例時(shí),只需要在數(shù)據(jù)文件中增加測(cè)試數(shù)據(jù)(輸入、對(duì)應(yīng)期望),避免了重復(fù)開(kāi)發(fā)帶來(lái)的開(kāi)發(fā)、維護(hù)成本。

因此,可以考慮基于測(cè)試庫(kù)架構(gòu)框架+數(shù)據(jù)驅(qū)動(dòng)的自動(dòng)化測(cè)試框架實(shí)現(xiàn)用例(代碼)與數(shù)據(jù)(參數(shù))解耦,將數(shù)據(jù)存在配置文件中,提高“查詢邏輯單一、復(fù)用性強(qiáng)”的測(cè)試場(chǎng)景下的自動(dòng)化測(cè)試的可擴(kuò)展性、維護(hù)性。

復(fù)雜業(yè)務(wù)流程的測(cè)試場(chǎng)景

業(yè)務(wù)流程場(chǎng)景一般指的是系統(tǒng)業(yè)務(wù)流程,類似于辦公流程,具有強(qiáng)流程性。在不考慮使用mock等方式對(duì)單接口進(jìn)行自動(dòng)化覆蓋的情況下,只考慮進(jìn)行不同流程接口的集成自動(dòng)化測(cè)試覆蓋,該如何設(shè)計(jì)呢?

基于這種測(cè)試場(chǎng)景,假如我們繼續(xù)使用測(cè)試庫(kù)架構(gòu)框架+數(shù)據(jù)驅(qū)動(dòng)的自動(dòng)化測(cè)試框架的設(shè)計(jì)思路來(lái)完成,效果會(huì)如何?

首先想到的一個(gè)弊端就是每條用例的代碼量會(huì)很多,對(duì)于用例(代碼)調(diào)試、維護(hù)成本會(huì)增加。單單這一點(diǎn),該方案就不應(yīng)被采用。

我們可以考慮基于測(cè)試庫(kù)構(gòu)架框架 + 數(shù)據(jù)驅(qū)動(dòng)框架(參數(shù)解耦)+ 關(guān)鍵字驅(qū)動(dòng)框架(操作解耦)。

采用這種框架會(huì)帶來(lái)哪些變化,首先基于關(guān)鍵字驅(qū)動(dòng)的測(cè)試框架解決的是開(kāi)發(fā)、維護(hù)成本以及開(kāi)發(fā)難度問(wèn)題,通過(guò)對(duì)測(cè)試庫(kù)函數(shù)的自然語(yǔ)言描述映射,對(duì)于業(yè)務(wù)人員由面向代碼的開(kāi)發(fā)轉(zhuǎn)換為面向自然語(yǔ)言的設(shè)計(jì)(組合設(shè)計(jì)), 降低了開(kāi)發(fā)難度與開(kāi)發(fā)成本,同時(shí)提高了測(cè)試用例的易擴(kuò)展性,可以快速擴(kuò)展相似測(cè)試。

高擴(kuò)展性的測(cè)試策略

去用例化

適用于場(chǎng)景(多接口組成的操作流程)或接口相似度較大的系統(tǒng),主要設(shè)計(jì)思想基于測(cè)試庫(kù)架構(gòu)框架、數(shù)據(jù)驅(qū)動(dòng)框架結(jié)合用例動(dòng)態(tài)生成框架(通過(guò)配置數(shù)據(jù)生成對(duì)應(yīng)的可執(zhí)行的自動(dòng)化測(cè)試用例)。

在實(shí)際應(yīng)用中,通過(guò)該框架設(shè)計(jì),實(shí)現(xiàn)了對(duì)系統(tǒng)的90%的接口自動(dòng)化覆蓋,產(chǎn)出4個(gè)模板用例文件(Py文件),配置文件填寫每條用例參數(shù)、期望信息,主要面向這五個(gè)文件進(jìn)行維護(hù),每次運(yùn)行基于此動(dòng)態(tài)生成3000余條自動(dòng)化用例(執(zhí)行完成后,生成的用例被刪除),很大程度上提高了用例的開(kāi)發(fā)效率和降低了維護(hù)成本,擴(kuò)展性也得到提升。

自動(dòng)化測(cè)試代碼不隨著用例增加而增加

適應(yīng)于廣泛的單接口或復(fù)雜場(chǎng)景的接口自動(dòng)化測(cè)試,基于測(cè)試庫(kù)架構(gòu)框架、數(shù)據(jù)驅(qū)動(dòng)框架的基礎(chǔ)上,補(bǔ)充關(guān)鍵字驅(qū)動(dòng)框架。對(duì)于業(yè)務(wù)手工測(cè)試人員,由面向代碼或配置的開(kāi)發(fā)轉(zhuǎn)化為面向自然語(yǔ)言(測(cè)試描述)的開(kāi)發(fā),最大程度的降低了開(kāi)發(fā)難度與維護(hù)成本,同時(shí)提高了測(cè)試用例的易擴(kuò)展性、易組織性,一定程度上實(shí)現(xiàn)了自動(dòng)化代碼不隨用例的增長(zhǎng)而增多。

更多接口自動(dòng)化測(cè)試推薦閱讀:

常用的API測(cè)試工具有哪些?怎么選擇API測(cè)試工具?

接口自動(dòng)化測(cè)試框架必須具備什么功能?

為什么要做接口測(cè)試?接口測(cè)試一般怎么測(cè)?

接口自動(dòng)化框架有哪些?解鎖各種接口自動(dòng)化測(cè)框架對(duì)比分析

本文內(nèi)容不用于商業(yè)目的,如涉及知識(shí)產(chǎn)權(quán)問(wèn)題,請(qǐng)權(quán)利人聯(lián)系SPASVO小編(021-60725088-8054),我們將立即處理,馬上刪除。
滬ICP備07036474號(hào) 2003-2024 版權(quán)所有 上海澤眾軟件科技有限公司 Shanghai ZeZhong Software Co.,Ltd.
微信
咨詢

添加客服微信 歡迎咨詢測(cè)試工具和測(cè)試服務(wù)

微信客服
問(wèn)題
反饋
產(chǎn)品
畫冊(cè)

掃描二維碼下載澤眾軟件企業(yè)宣傳冊(cè)

產(chǎn)品畫冊(cè)
返回
頂部

方案咨詢

×
提交信息

電話咨詢,400-035-7887,安排專業(yè)技術(shù)售前給您解答(產(chǎn)品試用、技術(shù)交流、服務(wù)咨詢和商務(wù)報(bào)價(jià))。

您的信息已成功提交!

我們的客服人員稍后會(huì)與您聯(lián)系