前言
我們需要一個什么樣的框架
既然要搭一個框架,我們首先得弄明白我們需要一個什么樣的框架,這個框架要支持什么功能?
框架主要的作用就是幫助我們編寫更加簡單而且好維護的用例,讓我們把主要精力放在測試用例的設計上,那么我們就需要把所有額外的東西抽象出來作為框架的部分。
現(xiàn)5種最流行的自動化測試框架類型
團隊根據(jù)團隊規(guī)模、經(jīng)驗水平、用戶需求等因素來選擇測試框架。以下是五種最流行的框架及其優(yōu)缺點:
一、線性框架
這是最基本的框架類型。它通常被稱為“記錄和回放(record and playback)”框架。
在這個過程中,測試代碼的創(chuàng)建和執(zhí)行是按線性或順序編寫的——測試人員手動記錄每一個步驟,并自動回放記錄的腳本。這些步驟包括導航、用戶輸入和檢查點。它最適合小型應用程序或團隊。
在此過程中,測試代碼的創(chuàng)建和執(zhí)行以線性或順序方式編寫-測試人員手動記錄每個步驟并自動播放記錄的腳本。這些步驟包括導航,用戶輸入和檢查點。最適合小型應用程序或小團隊。
優(yōu)點:
線性框架最大的好處是生成測試用例的速度快,直接錄制;無須代碼基礎,無須手動編寫測試代碼,因此門檻較低、易于上手。
缺點:
然而線性框架的不足之處也很明顯:錄制的腳本是固定的(hardcode),不可重用。這意味著,當應用發(fā)生微小變化時,上一次錄制的腳本可能就無法使用了,需要重新錄制(rework),從而產(chǎn)生大量的后期維護成本。
二、基于模塊化的框架
顧名思義,此框架允許將被測應用程序劃分為單獨的模塊,單元或部分。每個模塊都會為它們創(chuàng)建獨立的測試腳本。
因此,每個模塊及其測試腳本的組合可以構建代表各種測試案例的更大的測試。
優(yōu)點:
該框架在創(chuàng)建模塊時使用抽象。因此,應用程序更改將只影響與它們相關聯(lián)的測試腳本所涉及的模塊,而不影響其他部分。
高度的模塊化,這使得維護更加容易且具有成本效益。
創(chuàng)建測試用例所需的精力最少,因為可以重復使用不同模塊的測試腳本。
缺點:
如果沒有語言開發(fā)基礎,則建立框架可能會很困難。
由于將數(shù)據(jù)硬編碼到測試腳本中,因此無法重復使用數(shù)據(jù)集——因為測試是單獨執(zhí)行的。
三、庫結構框架
該庫體系結構框架建立在模塊化框架的基礎上,但具有其他好處。這樣做的好處是,它不僅可以將被測應用程序劃分為測試腳本,還可以將測試腳本中的相似任務劃分為通用功能。
然后創(chuàng)建一個庫,該庫構成了AUT的常用功能,可以在需要時由測試腳本調(diào)用。
優(yōu)點:
高度的模塊化,這使得測試維護簡單且預算友好。
它具有高度的可重用性,因為它的公共函數(shù)庫可以被幾個測試腳本使用。
缺點:
框架中引入的庫使其更加復雜。
測試數(shù)據(jù)也被硬編碼到測試腳本中。因此,數(shù)據(jù)中的更改必須適用于測試腳本。
測試腳本的開發(fā)需要更多的時間和技術。
四、數(shù)據(jù)驅(qū)動框架
在數(shù)據(jù)驅(qū)動框架中,測試數(shù)據(jù)和測試腳本是分離的。在許多測試場景中,需要使用不同的測試數(shù)據(jù)多次測試同一功能或特性。如果測試數(shù)據(jù)是hardcode進測試腳本的,那么每更換一次測試數(shù)據(jù)都需要修改測試腳本。
這是很大的工作量。此時,可以使用數(shù)據(jù)驅(qū)動框架。具體來說,測試腳本是固定的,而測試數(shù)據(jù)可以從外部的數(shù)據(jù)文件,以Excel、CSV、SQL等形式作為參數(shù)傳入測試腳本。這樣,我們只需要維護一份腳本和一份數(shù)據(jù)文件即可。
優(yōu)點:
總體來說,這種框架最大的好處就是易于維護。
測試腳本中的任何更改都不會影響測試數(shù)據(jù)。因此,可以避免對數(shù)據(jù)進行硬編碼。
可以使用多組數(shù)據(jù)進行測試。
可以通過更改外部數(shù)據(jù)庫中的測試數(shù)據(jù)來測試各種測試方案,從而減少所需的測試腳本數(shù)量。
缺點:
準備和計劃框架的通用測試腳本,識別與格式化測試數(shù)據(jù)需要花費時間。
框架設計的使用需要經(jīng)驗豐富的測試人員,因為它的復雜性,需要具備多種編程語言知識。
五、關鍵字驅(qū)動框架
該框架是數(shù)據(jù)驅(qū)動框架的擴展。測試數(shù)據(jù)和測試腳本也被分離,不同的是,該框架要更進一步地將測試腳本中的通用功能剝離出來,形成關鍵詞(keyword)。測試腳本本質(zhì)上就是對一系列通用的或者自定義的關鍵詞的調(diào)用。
這樣做的好處是關鍵詞可以在多個測試中復用,并且測試腳本更加易于維護。不過,實現(xiàn)這樣一個框架并非易事。
優(yōu)點:
與數(shù)據(jù)驅(qū)動不同,運行此框架不需要腳本知識。
可以獨立于被測應用程序構建測試腳本。
一個關鍵字可以在多個測試腳本中使用。因此該代碼是可重用的。
缺點:
設計框架和維護關鍵字對自動化的專業(yè)知識要求比較高。
實現(xiàn)該框架的成本相對較高,而且設置起來也比較耗時和復雜
六、總結
生是戰(zhàn)場,需要沖次,需要拼搏,處處布滿陷井,一不小心就會中埋伏,就會遭遇失敗,永無翻身之日,但我們拼搏一定要方向明確,有目標性拼搏,才會成功,幸福才會屬于你。
我們之所以要努力,不是為了改變世界,而是為了不讓世界改變我們。無論你是誰,無論你正在經(jīng)歷什么,堅持住,你定會看見最堅強的自己。文章來源:http://www.zghlxwxcb.cn/news/detail-461687.html
學會從層層困惑中看到一絲希望,學會從重重困難中找到一縷曙光,學會從陣陣郁悶中發(fā)現(xiàn)一份悠揚,學會從種種坎坷中獲得一些力量。文章來源地址http://www.zghlxwxcb.cn/news/detail-461687.html
到了這里,關于Python自動化測試5大框架類型,你怎么Python實現(xiàn)自動化測試?的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關文章,希望大家以后多多支持TOY模板網(wǎng)!