三、軟件測試自動化

  測試自動化(testautomation)是一類工具。它可以執(zhí)行測試用例、查找軟件缺陷、分析看到的信息、記錄結(jié)果。這是軟件測試自動化。

  1、宏錄制與回放

  基本的測試自動化類型是錄制第一次執(zhí)行測試用例時的鍵盤和鼠標(biāo)操作,然后在需要重新執(zhí)行這些測試時回放一次。

  在MAC系統(tǒng)上有Quickeys工具可以錄制并回放;在windows上有MacroMagic工具。

  宏錄制器和播放器是一種驅(qū)動程序工具。用于控制和操作被測試軟件的工具。

  如MacroMagic設(shè)置向?qū)Э梢栽O(shè)置宏的如下選項:

  1)名稱:為宏命名;

  2)重復(fù)次數(shù):設(shè)置宏在運(yùn)行時重復(fù)或者循環(huán)的次數(shù);

  3)觸發(fā)條件:設(shè)置宏如何啟動,可以按熱鍵、輸入一串字符、單擊快捷方式、當(dāng)某個窗口顯示出來時或者當(dāng)系統(tǒng)閑置一段時間之后;

  4)捕捉對象:可以選擇只捕獲(記錄)鍵盤操作或鍵盤和鼠標(biāo)的移動和單擊都記錄;

  5)回放速度:該速度比初錄制時多慢20%,多快500%;

  6)回放位置:該選項確定鼠標(biāo)移動和單擊位置與某個窗口的位置是的還是相對的。

  注意:在使用宏錄制器捕捉鼠標(biāo)移動和單擊時要小心,因為程序并非總是在屏幕上的同一位置啟動和出現(xiàn)。把回放位置設(shè)置為相對于程序窗口比設(shè)置為屏幕的位置更好,即便如此,GUI的一點(diǎn)變化也會擾亂捕捉的步驟。

  2、可編程的宏

  可編程的宏是在簡單錄制和回放的變化上的一大進(jìn)步。與其通過錄制第一次執(zhí)行測試時的操作來創(chuàng)建可編程的宏,不如在創(chuàng)建時編寫回放系統(tǒng)遵循的簡單指令。

  可編程的宏與錄制的宏相比,具有真正的優(yōu)勢:

  1)它可以暫停執(zhí)行,向測試員提示預(yù)期結(jié)果,并詢問測試是通過還是失敗。

  2)還可以解決錄制宏的許多時序問題,不是依靠延時,而是等待特定條件成立才繼續(xù)執(zhí)行。

  然而,在進(jìn)行復(fù)雜測試時還遺漏了兩個重要之處:

  1)可編程的宏限于直接執(zhí)行命令行??只能循環(huán)和重復(fù);

  2)在常規(guī)編程語言中可以見到的變量和決策語句不能使用,而且沒有自動檢查測試結(jié)果的能力。

  3、完全可編程的自動測試工具

  像可視化測試程序這樣的自動測試工具為軟件測試員創(chuàng)建強(qiáng)大測試提供了手段。

  許多工具基于BASIC編程語言。

  這些自動化工具具有的重要的特點(diǎn)是進(jìn)行驗證的能力,實際上是檢查軟件是否以預(yù)期方式運(yùn)行。實現(xiàn)這一點(diǎn)的方式:

  1)屏幕捕獲:首次執(zhí)行自動測試時,可以在肯定正確的關(guān)鍵點(diǎn)捕捉并保存屏幕圖像;

  2)控件值:檢查軟件窗口中各種控件的值;

  3)文件和其它輸出。

  驗證是自動測試要克服的后一個大難題。