詳解利用Visual Studio 2010提高測(cè)試效率
Visual Studio 2010在測(cè)試方面的改進(jìn)有目共睹,本文將結(jié)合作者所做實(shí)例,來(lái)為大家介紹自動(dòng)測(cè)試的問題。
上文書說到測(cè)試人員小張給開發(fā)人員小李發(fā)來(lái)了一份淋漓盡致的Bug報(bào)告,果不其然,小李根據(jù)小張的這張“畫影圖形”沒費(fèi)什么周折就將那個(gè)潛伏很深的Bug捉了出來(lái)??纱薆ug究竟是不是彼Bug呢?小張恐怕還得再跑一遍她發(fā)現(xiàn)彼Bug的測(cè)試以確認(rèn)問題確實(shí)已經(jīng)得到解決。其實(shí),即使不是為了確認(rèn)Bug是否已被剪滅,小張也得經(jīng)常把她做過的很多測(cè)試重新跑跑,以確保代碼在被程序員們改來(lái)改去的情況下,以前跑得通的測(cè)試現(xiàn)在也還仍然跑得通,這也就是所謂的回歸測(cè)試。
不斷單調(diào)重復(fù)地做同樣的事情總是會(huì)讓人感到很郁悶,而VS 2010可以幫助小張解除做回歸測(cè)試的煩惱,這也是VS 2010另一個(gè)可能讓所有手工測(cè)試人員眼前一亮的地方。
我們還是拿測(cè)試人員小張和開發(fā)人員小李來(lái)說吧,譬如,當(dāng)小張使用VS 2010中的MTR (Microsoft Test Runner)把自己編寫的某個(gè)手工測(cè)試(權(quán)且叫它TC 329吧)跑了一遍之后,MTR內(nèi)置的一個(gè)被稱作“錄制/回放引擎”的裝置就會(huì)象錄音機(jī)那樣把她所做的每一步操作都錄制下來(lái),隨后小李基于小張的這段“操作錄音”(也就是前文提到的操作日志 - Action Log)就可以在Visual Stuido中創(chuàng)建出一個(gè)被稱作"Coded UI Test"的測(cè)試(參考下面三幅圖),本質(zhì)上,他其實(shí)是把小張跑過的手工測(cè)試轉(zhuǎn)化成了一種基于.NET代碼的自動(dòng)化測(cè)試。
(使用操作“錄音”將手工測(cè)試轉(zhuǎn)換成自動(dòng)化測(cè)試)

(計(jì)算器加法測(cè)試的操作“錄音”)

(加法測(cè)試的操作“錄音”被轉(zhuǎn)換成代碼后的樣子)

當(dāng)TC 329被轉(zhuǎn)換成自動(dòng)測(cè)試之后,只要在小張測(cè)試路徑上的界面元素不出現(xiàn)大的調(diào)整,小張從此之后就可以讓機(jī)器替她來(lái)做TC 329的回歸測(cè)試了。哇!想想吧,這能讓小張同志少做多少重復(fù)勞動(dòng)吶 ;)
此外,小李還可以在這種"Coded UI Test"測(cè)試中加入一些驗(yàn)證邏輯代替“肉眼”驗(yàn)證界面元素的各種屬性,譬如文本內(nèi)容、控件尺寸、字體大小、背景顏色之類的東東(參考下面兩幅圖)。
(使用Coded UI Test Builder定位界面元素)

(隨即通過可視化方式加入驗(yàn)證邏輯)
值得一提的是,這些被自動(dòng)化了的手工測(cè)試可以象單元測(cè)試那樣在程序員簽入代碼前或在源代碼被Build時(shí)被自動(dòng)運(yùn)行,顯然這將及時(shí)捕捉到無(wú)法通過已有測(cè)試的代碼,有效地防止當(dāng)前系統(tǒng)因不良代碼的“侵入”而出現(xiàn)“退化”,同時(shí),這也將大大減輕小張小李們Debug的負(fù)擔(dān)。
最后,我想再補(bǔ)充一點(diǎn),那就是在手工測(cè)試的基礎(chǔ)上轉(zhuǎn)換而成的自動(dòng)測(cè)試,即Coded UI Test,其后臺(tái)代碼,如前面的圖片所示,是標(biāo)準(zhǔn)的.NET代碼,可以是用C#寫的,也可以是用VB.NET寫的,總之不是用任何其它為廣大.NET開人員所不熟悉的腳本語(yǔ)言,如VBScript之類的東東寫的。
原文標(biāo)題:使用VS 2010提高軟件測(cè)試自動(dòng)化的水平(2) - 將手工測(cè)試轉(zhuǎn)換成自動(dòng)測(cè)試
鏈接:http://www.cnblogs.com/taokey/archive/2010/03/29/1699841.html
【編輯推薦】


















