測試自動化框架的類型| 您應該知道的一切-軟件測試材料
什么是框架?
一個框架定義了一個?規(guī)則,或者說我們可以以系統(tǒng)的方式來達到預期的效果逐步最佳做法。因此,上述測試自動化框架涉及最佳實踐,以實現(xiàn)我們的自動化項目的目標。
讓我們看一個一般的例子:
我們大多數(shù)人都喜歡喝茶。我們?nèi)绾闻莺貌琛?/p>
為了做到這一點,我們添加了某種茶粉,糖,牛奶和水等成分來制成茶。為了制作出優(yōu)質(zhì)的茶,我們添加了所有成分應按正確的比例混合。
如果您想每天進行操作。不可能每天按正確比例添加所有成分。
如果可以將所有成分按正確比例添加到罐子中。您可以每次都以相同的口味沖泡茶。
在這里,我們添加了制作好茶所需的所有成分的“罐子”就是框架。
我們真的遵循這個過程嗎?
答案是否定的。
我們可以在不遵循此過程的情況下沖茶。
但是,如果先前上述過程,那么結(jié)果將會很好。
同樣,如果遵循一個框架,我們可以獲得更好的結(jié)果。

什么是Selenium框架?
Selenium框架的代碼結(jié)構(gòu)可幫助您重用代碼,減少代碼維護,提高代碼特征,并允許多個用戶使用相同的程序。
為什么我們需要Selenium框架?
易于代碼維護
增加代碼重用
更高的代碼清晰度性
降低腳本維護成本
減少測試的執(zhí)行時間
人力資源減少
易于報告
測試自動化框架的類型:
在Selenium自動化框架類型。
線性腳本框架
模塊化測試框架
圖書館架構(gòu)測試框架
數(shù)據(jù)驅(qū)動的測試框架
關鍵字驅(qū)動的測試框架
混合測試框架
行為驅(qū)動開發(fā)測試框架

線性腳本框架:
線性腳本框架是基本等級的自動化測試框架,以線性方式呈現(xiàn)“記錄和追溯”形式。
該框架也稱為“記錄和重建”框架。
這種類型的框架用于測試小型應用程序。
在這種類型中,將針對每個測試用例分別完成測試腳本的創(chuàng)建和執(zhí)行。
測試人員捕獲每個測試步驟,例如瀏覽,導航,用戶輸入,執(zhí)行檢查點。然后測試人員播放腳本以進行測試。
線性腳本自動化框架的優(yōu)點:
無需計劃或花費大量時間即可生成測試腳本(記錄和重置)
不需要編碼知識
生成測試腳本的快速方法
線性腳本自動化框架的缺點:
由于自動生成的腳本,缺乏可重用性
硬編碼數(shù)據(jù)容許我們使用多個數(shù)據(jù)集
維護成本高–即使要做很小的更改,也需要大量的成本。
模塊化測試框架:
在調(diào)試測試框架中,測試人員可以通過將整個被測應用程序分解為較小的獨立測試來明智地創(chuàng)建測試腳本模塊。
簡而言之,測試人員將應用程序劃分為多個模塊,并分別創(chuàng)建測試腳本。通過使用主腳本來實現(xiàn)所需的方案,可以將這些單獨的測試腳本組合成一體的測試腳本。該主腳本用于初始化各個模塊以運行端到端測試方案。
使用此框架的首要是要建立一個抽象層,以保護主模塊分段替換測試中運作的任何更改。
在此框架中,測試人員編寫函數(shù)庫以在需要時使用它。這是AKA框架或基于模塊的框架。
模塊化測試框架的優(yōu)勢:
由于將整個應用程序分解為不同的模塊,因此具有更好的可伸縮性和易于維護
可以獨立編寫測試腳本
一個模塊中的更改對其他模塊沒有影響或影響很小
模塊化測試框架的缺點:
花更多時間分析測試用例并確定可重用的流程
由于測試腳本中的數(shù)據(jù)經(jīng)過硬編碼,因此無法指控多個數(shù)據(jù)集。
需要編碼技巧才能建立框架
圖書館架構(gòu)測試框架:
圖書館架構(gòu)測試框架,又稱“結(jié)構(gòu)化腳本”或“功能分解”
它基于一級框架,并具有一些其他優(yōu)點。
在調(diào)試測試框架中,我們將被測試的應用程序劃分為模塊,而在這里,我們確定了常見任務對其其分組為功能。將功能分組后,這些組將保存在庫中。測試腳本重用這些庫來創(chuàng)造新的測試用例。
庫體系結(jié)構(gòu)測試框架的優(yōu)點:
腳本維護很簡單
容易擴展
函數(shù)庫是可重用的,并且可以重用
庫體系結(jié)構(gòu)測試框架的缺點:
需要編碼技能
準備測試腳本需要更多時間
一組固定的測試數(shù)據(jù)在腳本中進行了硬編碼
數(shù)據(jù)驅(qū)動的框架:
數(shù)據(jù)驅(qū)動的測試自動化框架著重于將測試腳本邏輯和測試數(shù)據(jù)彼此分離。
它允許我們通過傳遞不同的測試數(shù)據(jù)集來創(chuàng)建測試自動化腳本。
測試數(shù)據(jù)集保存在外部文件或資源中,例如MS Excel工作表,MS Access表,SQL數(shù)據(jù)庫,XML文件等,
測試腳本連接到外部資源以獲取測試數(shù)據(jù)。
通過使用此框架,我們可以輕松地使測試腳本針對不同的測試數(shù)據(jù)集正常工作。
與基于模塊的框架索引,該框架大大減少了測試腳本的數(shù)量。
該框架通過可重復使用的測試提供了更大的測試覆蓋范圍,并且僅在需要時并僅更改輸入的測試數(shù)據(jù)即可靈活執(zhí)行測試。
它通過更改測試數(shù)據(jù)對測試沒有影響是可靠的,但它也有其自身的缺點,例如在此框架上工作的測試人員需要使用動手編程知識才能開發(fā)測試腳本
數(shù)據(jù)驅(qū)動框架的優(yōu)點:
它支持多個數(shù)據(jù)集
修改測試腳本不會影響測試數(shù)據(jù)
無需對測試數(shù)據(jù)進行硬編碼
通過執(zhí)行更多測試來節(jié)省時間
數(shù)據(jù)驅(qū)動框架的缺點:
需要編碼技巧
設置框架和測試數(shù)據(jù)需要更多時間
需要經(jīng)驗豐富的自動化測試人員來設計框架
關鍵字驅(qū)動的測試框架:
這也稱為表驅(qū)動測試或基于動作詞的測試。?
在關鍵字驅(qū)動的測試中,我們使用表格格式為將要執(zhí)行的每個函數(shù)或方法定義關鍵字或操作詞。
它根據(jù)excel工作表中指定的關鍵字執(zhí)行自動化測試腳本。
通過使用此框架,測試人員可以使用關鍵字來開發(fā)任何測試自動化腳本,而編程知識替代的測試人員也可以使用該測試腳本。
他邏輯讀取關鍵字和調(diào)用外部的Excel表中提到的所需的動作被放置在主類。關鍵字驅(qū)動的測試類似于數(shù)據(jù)驅(qū)動的測試。
即使在此框架上工作不需要太多的編程技能,但初始設置(實施框架)也需要更多的專業(yè)知識。
關鍵字驅(qū)動框架的優(yōu)勢:
無需成為專家即可編寫測試腳本
可以重用代碼。我們可以將不同的腳本指向相同的關鍵字
即使應用程序更改,測試腳本也不會更改。
在開發(fā)應用程序之前可以設計測試
測試腳本通過基本修改獨立于被測應用程序運行
不依賴于測試工具
關鍵字驅(qū)動框架的缺點:
花更多時間設計
初始成本高
需要具有良好測試自動化技能的員工
混合驅(qū)動測試框架:
混合測試自動化框架是上述兩個或多個框架的組合。它嘗試針對管理的特定測試環(huán)境利用其他框架的優(yōu)勢和好處。大多數(shù)團隊正在通過當前市場中構(gòu)建這種混合驅(qū)動的框架。
行為驅(qū)動開發(fā)測試框架:
此行為驅(qū)動開發(fā)框架的目的是創(chuàng)建一個允許所有人(例如業(yè)務分析師,開發(fā)人員,測試人員等)積極參與的平臺。它要求開發(fā)團隊和測試團隊之間加強協(xié)作。它不需要用戶熟悉編程語言。我們使用非技術(shù)性自然語言來創(chuàng)建測試規(guī)范。市場上可用于行為驅(qū)動開發(fā)的一些工具是JBehave,Cucumber等,
摘要:
即使我們看到了不同類型的測試自動化框架。最流行的測試自動化框架是數(shù)據(jù)驅(qū)動框架,關鍵字驅(qū)動框架和混合框架。
在數(shù)據(jù)驅(qū)動框架中,我們將測試數(shù)據(jù)保存在excel表中,并使用TestNG的數(shù)據(jù)提供程序執(zhí)行測試用例。
在關鍵字驅(qū)動的框架中,我們在excel表中定義關鍵字,并且代碼將調(diào)用此文件來執(zhí)行測試用例
混合框架是數(shù)據(jù)驅(qū)動框架和關鍵字驅(qū)動框架的組合。


往期推薦
