什么是自動(dòng)化測(cè)試

在軟件測(cè)試領(lǐng)域,有兩種測(cè)試技術(shù):「手動(dòng)測(cè)試」和「自動(dòng)測(cè)試」。兩種方法都旨在執(zhí)行測(cè)試用例,然后將實(shí)際結(jié)果與預(yù)期結(jié)果進(jìn)行比較。
概括來(lái)講手動(dòng)測(cè)試是一種人工執(zhí)行操作的測(cè)試技術(shù),可確保軟件代碼完成應(yīng)有的功能。那么什么是自動(dòng)化測(cè)試呢?相反,這是一種自動(dòng)運(yùn)行測(cè)試技術(shù),管理測(cè)試數(shù)據(jù)以及利用結(jié)果來(lái)提高軟件質(zhì)量的實(shí)踐。
對(duì)于一名測(cè)試工程師而言,連續(xù)的開發(fā)周期需要重復(fù)執(zhí)行相同的測(cè)試用例組成的測(cè)試套件。如果每一次都手動(dòng)執(zhí)行此過程,可能會(huì)非常重復(fù)且耗時(shí),很容易讓人產(chǎn)生疲倦感。但是通過利用測(cè)試自動(dòng)化工具,可以更輕松地編寫測(cè)試套件,按需重手動(dòng)執(zhí)行,減輕人為干預(yù)并提高測(cè)試。
自動(dòng)化測(cè)試的好處
我們已經(jīng)了解了自動(dòng)化測(cè)試的基本內(nèi)容,那么現(xiàn)在該看看自動(dòng)化測(cè)試的多個(gè)好處了。這些信息可以幫助消除自動(dòng)化測(cè)試是否適合現(xiàn)在團(tuán)隊(duì)的不確定性。
以下是自動(dòng)化測(cè)試之所以成功流行的主要原因也是自動(dòng)化測(cè)試的優(yōu)點(diǎn):
簡(jiǎn)化測(cè)試執(zhí)行
使用自動(dòng)化測(cè)試工具,可以根據(jù)需要多次重復(fù)使用測(cè)試腳本,從而節(jié)省了時(shí)間和精力。對(duì)比一下使用手動(dòng)測(cè)試,測(cè)試工程師必須一次又一次地執(zhí)行同一測(cè)試用例的:準(zhǔn)備、執(zhí)行、報(bào)告等過程。
減少人為干預(yù)
利用自動(dòng)化工具,測(cè)試工程師可以在無(wú)人值守的情況下運(yùn)行自動(dòng)化測(cè)試用例。完成一次編寫后,可以無(wú)限制地重復(fù)使用和執(zhí)行測(cè)試,而無(wú)需進(jìn)行過多額外的操作。與手動(dòng)測(cè)試不同,該測(cè)試還可以「7·24」全天候可執(zhí)行。
加快測(cè)試
測(cè)試執(zhí)行和測(cè)試覆蓋范圍的速度增加,從而縮短了軟件開發(fā)周期。使用良好的測(cè)試自動(dòng)化框架,可以通過持續(xù)執(zhí)行測(cè)試用例來(lái)幫助縮短應(yīng)用程序的上市時(shí)間。一旦自動(dòng)化,測(cè)試用例的執(zhí)行速度將比手動(dòng)測(cè)試更快,并且可持續(xù)運(yùn)行時(shí)間更長(zhǎng)。
增加測(cè)試范圍
自動(dòng)化測(cè)試使您能夠在多個(gè)平臺(tái)上并行執(zhí)行測(cè)試,而無(wú)需在不同的瀏覽器版本中創(chuàng)建大量測(cè)試用例。在測(cè)試自動(dòng)化中,可以執(zhí)行與應(yīng)用程序有關(guān)的更多測(cè)試。這導(dǎo)致更高的測(cè)試覆蓋率,這在手動(dòng)測(cè)試方法中將意味著龐大的團(tuán)隊(duì),其工作時(shí)間受到了很大的限制。測(cè)試覆蓋率的提高導(dǎo)致測(cè)試更多功能和更高質(zhì)量的應(yīng)用程序。
自動(dòng)化測(cè)試的分類
測(cè)試自動(dòng)化有許多途徑,下面列出一些廣泛應(yīng)用的一般方法:
基于圖形用戶交互界面測(cè)試 (GUI Based Testing)。基于用戶界面(GUI)的測(cè)試使用能夠產(chǎn)生圖形用戶界面操作(如出表點(diǎn)擊、鍵盤輸入等)的測(cè)試框架,模擬用戶動(dòng)作來(lái)以觀察、驗(yàn)證程序是否正確的響應(yīng)。
接口測(cè)試(又稱基于API的測(cè)試,API Based Testing)。接口測(cè)試指的是通過調(diào)用接口(API)繞過GUI,,以應(yīng)用到驗(yàn)證的行為進(jìn)行測(cè)試。通常API動(dòng)繞過測(cè)試的應(yīng)用程序的用戶界面。它也可以測(cè)試公共的接口,以類、模塊或圖書館都經(jīng)過測(cè)試,有各種各樣的輸入?yún)?shù)來(lái)驗(yàn)證返回的結(jié)果是正確的。
接口測(cè)試
接口測(cè)試是被廣泛使用的軟件測(cè)試方法之一,它使軟件測(cè)試工程師能夠忽略GUI的影響,對(duì)軟件功能本身進(jìn)行測(cè)試。它是程序邏輯測(cè)試中非常關(guān)鍵的一步。通常情況下在開發(fā)的早期階段,接口測(cè)試就會(huì)開始執(zhí)行來(lái)確保代碼始終是準(zhǔn)確無(wú)誤的。
接口測(cè)試也作為集成測(cè)試的一部分,用于判斷系統(tǒng)是否滿足功能、可靠性、性能表現(xiàn)和安全性的要求。由于接口測(cè)試不使用GUI,它主要通過字符方式與測(cè)試者進(jìn)行交互。
圖形用戶界面(GUI)測(cè)試
許多測(cè)試自動(dòng)化工具提供記錄與回放宏的功能,這允許用戶記錄他們?cè)诮换ナ接脩艚缑嫔线M(jìn)行的鼠標(biāo)點(diǎn)擊、鍵盤輸入等操作。這樣在之后的測(cè)試當(dāng)中,播放宏便可以自動(dòng)測(cè)試這些交互,與正常情況下的交互反饋進(jìn)行對(duì)比便可完成針對(duì)GUI的測(cè)試工作。這種方法幾乎不要求用戶具有軟件開發(fā)經(jīng)驗(yàn),并且可以應(yīng)用于幾乎任何具有GUI的應(yīng)用程序。然而,這些特點(diǎn)也帶來(lái)了一些可靠性和維護(hù)性問題:任何按鈕的重命名或是移動(dòng)都會(huì)讓宏出現(xiàn)錯(cuò)誤,用戶便需要重新錄制宏。
Chrome 實(shí)現(xiàn)自動(dòng)化測(cè)試:錄制回放網(wǎng)頁(yè)動(dòng)作
現(xiàn)在先來(lái)看一下怎么使用它吧。首先,把瀏覽器升級(jí)到最新的版本,目前我的瀏覽器版本 103,接著我們?cè)陂_發(fā)者工具當(dāng)中打開錄制功能。

使用錄制功能時(shí),先點(diǎn)擊 Start Record 按鈕開始錄制,之后在瀏覽器中所有的操作就會(huì)被記錄下來(lái),錄制結(jié)束后,點(diǎn)擊結(jié)束。在 Recorder 標(biāo)簽下會(huì)展示所有已經(jīng)被錄制的腳本,點(diǎn)擊 Replay 可以回放之前的操作,這個(gè)過程是自動(dòng)的,不再需要手工參與。
在測(cè)試過程中主要有兩種應(yīng)用場(chǎng)景:
1、在進(jìn)行探索式測(cè)試時(shí),可以快速記錄自己的測(cè)試操作,方便后面補(bǔ)用例。
2、把手工測(cè)試的步驟轉(zhuǎn)化成自動(dòng)化測(cè)試的代碼。目前支持直接導(dǎo)出 puppeter 腳本,如果不使用 puppeter, 可以自己寫工具轉(zhuǎn)化成其他工具的代碼。
總結(jié):自動(dòng)化測(cè)試可以人工寫腳本,也可以通過錄制回放生成腳本運(yùn)行。
