當(dāng)前位置:澤眾軟件測試網(wǎng)- 技術(shù)文章 -正文

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

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

隨著自動化測試的發(fā)展,自動化測試工具、測試框架也越來越豐富,比如:

自動化測試工具的分類:Web自動化測試工具,性能自動化測試工具,接口自動化測試工具

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

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

接口自動化框架

自動化測試工具的選擇:

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

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

很多種自動化測試框架(或工具)都可以開展自動化, 所以在自動化框架(或工具)的選擇上,以被測對象為本來選擇自動化框架(或工具)。

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

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

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

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

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

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

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

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

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

去用例化

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

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

自動化測試代碼不隨著用例增加而增加

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

更多接口自動化測試推薦閱讀:

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

接口自動化測試框架必須具備什么功能?

為什么要做接口測試?接口測試一般怎么測?

接口自動化框架有哪些?解鎖各種接口自動化測框架對比分析

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

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

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

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

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

方案咨詢

×
提交信息

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

您的信息已成功提交!

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