啟發(fā)式確認(rèn): 我曾經(jīng)看到很多測(cè)試自動(dòng)化沒(méi)有真正意義上的結(jié)果校驗(yàn),其原因有兩個(gè),一個(gè)原因是做完全意義上的自動(dòng)化測(cè)試結(jié)果確認(rèn)從技術(shù)上講是很困難的,另外一個(gè)原因是通過(guò)測(cè)試設(shè)計(jì)規(guī)格很難找出自動(dòng)化測(cè)試的預(yù)期結(jié)果。這很不幸。不過(guò),采用手工校驗(yàn)測(cè)試結(jié)果的方法是真正意義上的測(cè)試校驗(yàn)。標(biāo)準(zhǔn)文件( Gold file )是另外一中校驗(yàn)測(cè)試結(jié)果的方法。首先,捕獲被測(cè)試程序的輸出,并檢視程序的輸出,然后,把輸出信息文檔化,并歸檔,作為標(biāo)準(zhǔn)文件。以后,自動(dòng)化測(cè)試結(jié)果與標(biāo)準(zhǔn)文件作比較,從而達(dá)到結(jié)果校驗(yàn)的目的。采用標(biāo)準(zhǔn)文件的方法,也有弊端。當(dāng)產(chǎn)品發(fā)生變化,自動(dòng)化測(cè)試的環(huán)境配置發(fā)生變化,產(chǎn)品的輸出發(fā)生變化的時(shí)候,采用標(biāo)準(zhǔn)文方法,會(huì)上報(bào)大量的誤報(bào)告警。做好的測(cè)試結(jié)果校驗(yàn)方法是,對(duì)輸出結(jié)果的特定內(nèi)容作分析,并作合理的比較。有時(shí)候,很難知道正確的輸出結(jié)果是什么樣的,但是你應(yīng)該知道錯(cuò)誤的輸出結(jié)果是什么樣的。開展啟發(fā)式的結(jié)果校驗(yàn)是很有幫助的。我猜想一些人在自動(dòng)化測(cè)試中設(shè)計(jì)了大而全的測(cè)試結(jié)果校驗(yàn)方法,是因?yàn)閾?dān)心如果結(jié)果校驗(yàn)漏掉了任何信息,可能導(dǎo)致自動(dòng)化測(cè)試自身出現(xiàn)錯(cuò)誤。不過(guò),我們?cè)跍y(cè)試過(guò)程中往往采用折衷的做法,沒(méi)有采用大而全的測(cè)試結(jié)果校驗(yàn)方法,這樣就不得不面對(duì)少量漏測(cè)情況的出現(xiàn)的風(fēng)險(xiǎn)。自動(dòng)化測(cè)試不能改變這種情況的出現(xiàn)。如果自動(dòng)化工程師不習(xí)慣采用這種折衷的方法,那么他必須找相關(guān)人員咨詢,尋找一種合適的測(cè)試結(jié)果校驗(yàn)策略,這需要有很大的創(chuàng)造性。目前有很多技術(shù)可以保證在不產(chǎn)生誤報(bào)告警的情況下,找到被測(cè)試產(chǎn)品的缺陷。
把注意力放在通過(guò)設(shè)計(jì)保證測(cè)試的可延續(xù)性上,選擇一個(gè)合適的測(cè)試體系架構(gòu),你將進(jìn)一步邁向成功的自動(dòng)化測(cè)試。
6. 有計(jì)劃的部署
在前面的故事中,當(dāng)自動(dòng)化工程師沒(méi)有提供打包后的自動(dòng)化測(cè)試程序給測(cè)試執(zhí)行人員,會(huì)影響到測(cè)試執(zhí)行,測(cè)試執(zhí)行人員不得不反過(guò)來(lái)求助自動(dòng)化工程師指出如何使用自動(dòng)化測(cè)試程序。
作為自動(dòng)化工程師,你知道如何利用自動(dòng)化方法執(zhí)行測(cè)試和分析執(zhí)行失敗的結(jié)果。不過(guò),測(cè)試執(zhí)行人員卻未必知道如何使用自動(dòng)化測(cè)試。因此,需要提供自動(dòng)化測(cè)試程序的安裝文檔和使用文檔,保證自動(dòng)化測(cè)試程序容易安裝和配置。當(dāng)安裝的環(huán)境與安裝的要求不匹配,出現(xiàn)安裝錯(cuò)誤的時(shí)候,能夠給出有價(jià)值的提示信息,便于定位安裝問(wèn)題。
能夠把自動(dòng)化測(cè)試程序和測(cè)試套作為產(chǎn)品對(duì)待,那真是太好了。你應(yīng)該對(duì)自動(dòng)化測(cè)試程序和測(cè)試套件開展測(cè)試,保證它們不依賴于任何專用的庫(kù)或者是設(shè)備上的任何其他程序。
保證其他測(cè)試人員能夠隨時(shí)利用已經(jīng)提供的自動(dòng)化測(cè)試程序和測(cè)試套開展測(cè)試工作;保證自動(dòng)化測(cè)試是符合一般測(cè)試執(zhí)行人員的思維習(xí)慣的;保證測(cè)試執(zhí)行人員能夠理解測(cè)試結(jié)果,并能夠正確分析失敗的測(cè)試執(zhí)行結(jié)果;這需要自動(dòng)化工程師提供自動(dòng)動(dòng)化測(cè)試相關(guān)的指導(dǎo)性文檔和培訓(xùn)。
作為測(cè)試管理者,你希望在自動(dòng)化工程師離開前,能夠識(shí)別并修改測(cè)試套中的所有問(wèn)題。自動(dòng)化工程師遲早會(huì)離開的,如果你沒(méi)有及時(shí)的把測(cè)試套件中的問(wèn)題提出來(lái),就會(huì)面臨廢棄已有的測(cè)試套件的決定。
良好的測(cè)試套件有多方面的用處。良好的測(cè)試套支持對(duì)產(chǎn)品新版本的測(cè)試;良好的測(cè)試套在新的軟件平臺(tái)上可以很方便的驗(yàn)證產(chǎn)品的功能;良好的測(cè)試套支持每天晚上開始的軟件每日構(gòu)造過(guò)程;甚至開發(fā)人員在代碼 check in 之前,用良好的測(cè)試套驗(yàn)證代碼的正確性。
測(cè)試套件的共享也很重要。很難預(yù)見(jiàn)以后什么人會(huì)繼續(xù)使用你開發(fā)的測(cè)試套。因此,盡量讓產(chǎn)品開發(fā)測(cè)試團(tuán)隊(duì)中的成員都很容易獲得你的測(cè)試套??梢园褱y(cè)試套放在公司的內(nèi)部網(wǎng)絡(luò)上,這是個(gè)很好的辦法。這樣,大家就不必為了獲取一份需要的測(cè)試套而四處打聽(tīng)。有些人總是感覺(jué)自己的測(cè)試套還沒(méi)有終完工或者不夠完美,而沒(méi)有拿出來(lái)與人分享,這種做法一定要改變,共享出來(lái)的測(cè)試套不一定非常完美,共享才是關(guān)鍵。
有計(jì)劃的自動(dòng)化測(cè)試部署,保證你的測(cè)試套件能夠被產(chǎn)品相關(guān)人員獲取到,你就向成功的自動(dòng)化測(cè)試又邁進(jìn)了一步。并且你的自動(dòng)化測(cè)試會(huì)被又的重用。
把注意力放在通過(guò)設(shè)計(jì)保證測(cè)試的可延續(xù)性上,選擇一個(gè)合適的測(cè)試體系架構(gòu),你將進(jìn)一步邁向成功的自動(dòng)化測(cè)試。
6. 有計(jì)劃的部署
在前面的故事中,當(dāng)自動(dòng)化工程師沒(méi)有提供打包后的自動(dòng)化測(cè)試程序給測(cè)試執(zhí)行人員,會(huì)影響到測(cè)試執(zhí)行,測(cè)試執(zhí)行人員不得不反過(guò)來(lái)求助自動(dòng)化工程師指出如何使用自動(dòng)化測(cè)試程序。
作為自動(dòng)化工程師,你知道如何利用自動(dòng)化方法執(zhí)行測(cè)試和分析執(zhí)行失敗的結(jié)果。不過(guò),測(cè)試執(zhí)行人員卻未必知道如何使用自動(dòng)化測(cè)試。因此,需要提供自動(dòng)化測(cè)試程序的安裝文檔和使用文檔,保證自動(dòng)化測(cè)試程序容易安裝和配置。當(dāng)安裝的環(huán)境與安裝的要求不匹配,出現(xiàn)安裝錯(cuò)誤的時(shí)候,能夠給出有價(jià)值的提示信息,便于定位安裝問(wèn)題。
能夠把自動(dòng)化測(cè)試程序和測(cè)試套作為產(chǎn)品對(duì)待,那真是太好了。你應(yīng)該對(duì)自動(dòng)化測(cè)試程序和測(cè)試套件開展測(cè)試,保證它們不依賴于任何專用的庫(kù)或者是設(shè)備上的任何其他程序。
保證其他測(cè)試人員能夠隨時(shí)利用已經(jīng)提供的自動(dòng)化測(cè)試程序和測(cè)試套開展測(cè)試工作;保證自動(dòng)化測(cè)試是符合一般測(cè)試執(zhí)行人員的思維習(xí)慣的;保證測(cè)試執(zhí)行人員能夠理解測(cè)試結(jié)果,并能夠正確分析失敗的測(cè)試執(zhí)行結(jié)果;這需要自動(dòng)化工程師提供自動(dòng)動(dòng)化測(cè)試相關(guān)的指導(dǎo)性文檔和培訓(xùn)。
作為測(cè)試管理者,你希望在自動(dòng)化工程師離開前,能夠識(shí)別并修改測(cè)試套中的所有問(wèn)題。自動(dòng)化工程師遲早會(huì)離開的,如果你沒(méi)有及時(shí)的把測(cè)試套件中的問(wèn)題提出來(lái),就會(huì)面臨廢棄已有的測(cè)試套件的決定。
良好的測(cè)試套件有多方面的用處。良好的測(cè)試套支持對(duì)產(chǎn)品新版本的測(cè)試;良好的測(cè)試套在新的軟件平臺(tái)上可以很方便的驗(yàn)證產(chǎn)品的功能;良好的測(cè)試套支持每天晚上開始的軟件每日構(gòu)造過(guò)程;甚至開發(fā)人員在代碼 check in 之前,用良好的測(cè)試套驗(yàn)證代碼的正確性。
測(cè)試套件的共享也很重要。很難預(yù)見(jiàn)以后什么人會(huì)繼續(xù)使用你開發(fā)的測(cè)試套。因此,盡量讓產(chǎn)品開發(fā)測(cè)試團(tuán)隊(duì)中的成員都很容易獲得你的測(cè)試套??梢园褱y(cè)試套放在公司的內(nèi)部網(wǎng)絡(luò)上,這是個(gè)很好的辦法。這樣,大家就不必為了獲取一份需要的測(cè)試套而四處打聽(tīng)。有些人總是感覺(jué)自己的測(cè)試套還沒(méi)有終完工或者不夠完美,而沒(méi)有拿出來(lái)與人分享,這種做法一定要改變,共享出來(lái)的測(cè)試套不一定非常完美,共享才是關(guān)鍵。
有計(jì)劃的自動(dòng)化測(cè)試部署,保證你的測(cè)試套件能夠被產(chǎn)品相關(guān)人員獲取到,你就向成功的自動(dòng)化測(cè)試又邁進(jìn)了一步。并且你的自動(dòng)化測(cè)試會(huì)被又的重用。