為什么腳本化測(cè)試不適合新手

  注:這是James Bach的一篇近期blog,我簡(jiǎn)單翻譯了一下,原文鏈接:Why Scripted Testing is Not for Novices

  為什么腳本化的測(cè)試不適合新手。。。除非你想要的是糟糕的測(cè)試

  Claire Moss寫(xiě)到:

  你說(shuō)腳本化的測(cè)試對(duì)新手來(lái)說(shuō)要更難,這讓我很驚訝。我原本以為更具結(jié)構(gòu)化的測(cè)試,對(duì)一個(gè)缺乏經(jīng)驗(yàn)的人而言,會(huì)更容易入門(mén),腳本化的指導(dǎo)說(shuō)明會(huì)彌補(bǔ)測(cè)試人員在專業(yè)規(guī)范方面的欠缺。

  結(jié)構(gòu)!=“被告知做什么”

  首先,你對(duì)”結(jié)構(gòu)“的理解是錯(cuò)誤的。所有的測(cè)試都是結(jié)構(gòu)化的。 如果當(dāng)你說(shuō)”結(jié)構(gòu)”時(shí)指的是“外部強(qiáng)加的結(jié)構(gòu)”,那么這樣說(shuō)吧。但即使你在測(cè)試時(shí)沒(méi)有注意到什么結(jié)構(gòu),你的測(cè)試中也是有結(jié)構(gòu)存在的。當(dāng)我讓一個(gè)新手測(cè)試 而不告知他如何去測(cè)的時(shí)候,他基本上會(huì)被那些他沒(méi)有意識(shí)到的特定結(jié)構(gòu)所主導(dǎo)?或者,即使他注意到了,他也無(wú)法表達(dá)出來(lái)或者控制他們。比如,界面的外觀和 感覺(jué)對(duì)新手來(lái)說(shuō)是一種指導(dǎo)性的結(jié)構(gòu)。他們測(cè)試他們所看到的東西。

  認(rèn)知學(xué)為指導(dǎo)人們思考和行為的結(jié)構(gòu)提供了大量的思想和見(jiàn)解。更多信息可以看Dan Ariely的這本書(shū)《Predictably Irrational》。腳本化的測(cè)試總是有兩個(gè)不同的部分:測(cè)試設(shè)計(jì)和測(cè)試執(zhí)行。必須單獨(dú)考慮這兩個(gè)部分。

  腳本化的測(cè)試執(zhí)行要比探索性測(cè)試難很多, 除非你假設(shè)執(zhí)行腳本的測(cè)試人員與設(shè)計(jì)腳本的測(cè)試人員具有完全一樣的知識(shí)和技能(即使這樣,測(cè)試執(zhí)行與測(cè)試設(shè)計(jì)從性質(zhì)上說(shuō)是兩種不同的認(rèn)知過(guò)程)。探索性測(cè) 試人員會(huì)跟隨(實(shí)際上是在測(cè)試的時(shí)候形成的)他的意圖和想法去測(cè)試。但,腳本化測(cè)試人員,要想做好,必須理解寫(xiě)這個(gè)腳本的人的意圖。并且,腳本化測(cè)試人員 必須超越腳本本身所描述的顯式的意圖,要去揣摩那些隱式的意圖?否則,他的測(cè)試將是膚淺的、糟糕的。

  嘗試用一個(gè)腳本指導(dǎo)一個(gè)10歲的孩子在繁忙的城市馬路上安全的駕駛。我不能相信誰(shuí)能做到這點(diǎn)。你并不能用詳細(xì)的指令操作彌補(bǔ)基本技能的不足。對(duì)于試圖彌補(bǔ)規(guī)范性方面,我也同樣確信是做不到的。規(guī)范性相對(duì)其他的一些事情,只是很小的一個(gè)方面。

  腳本化的測(cè)試設(shè)計(jì)(是指設(shè)計(jì)測(cè)試用例?邰注),那也是一種專項(xiàng)技能。我可以讓我的兒子組裝一臺(tái)電腦。他知道如何做這個(gè)活。但是如果我讓他給我詳細(xì)地寫(xiě)出操作步驟,以便我按 照這些操作指導(dǎo)能組裝電腦,我懷疑他寫(xiě)的東西究竟會(huì)對(duì)我有多大幫助。寫(xiě)腳本要求有耐心、判斷力、和將來(lái)要執(zhí)行這個(gè)腳本的人進(jìn)行換位思考。他還不具備這些 品質(zhì)。大多數(shù)人都不喜歡寫(xiě)東西。他們沒(méi)有足夠的動(dòng)力。現(xiàn)在卻交給他們一項(xiàng)需要高超寫(xiě)作技巧的任務(wù)。他們寫(xiě)出來(lái)的東西通常都很糟糕(測(cè)試設(shè)計(jì)的結(jié)果通常都不 怎么令人滿意?邰注)。

  無(wú)論從測(cè)試設(shè)計(jì)角度還是從測(cè)試執(zhí)行角度,腳本化的測(cè)試,要想做的足夠好,都比探索性測(cè)試要難。試圖把一個(gè)綜合的認(rèn)知活動(dòng)分成兩部分,還單獨(dú)運(yùn)作得很好,這是很難的。

  管理者認(rèn)為腳本化的測(cè)試要比探索性的測(cè)試容易,這是因?yàn),他們?duì)測(cè)試的質(zhì)量要求并不高,而對(duì)表面上看起來(lái)測(cè)試是否井然有序以及是否體現(xiàn)了較高的測(cè)試生產(chǎn)力,更注重一些。

  當(dāng)我訓(xùn)練一名測(cè)試新手時(shí),我都從高度探索性的測(cè)試工作開(kāi)始。后,我會(huì)介紹一些腳本化測(cè)試相關(guān)的要素給他。對(duì)于那些為數(shù)不多的、腳本化的測(cè)試是很重要的場(chǎng)合,所有高技能的測(cè)試人員必須能夠輕松舒適地做腳本化的測(cè)試。

  例子

  1、打開(kāi)瀏覽器

  2、去CNN.com網(wǎng)站

  3、測(cè)試CNN.com網(wǎng)站,報(bào)告任何發(fā)現(xiàn)的問(wèn)題

  這看起來(lái)像個(gè)腳本,它確實(shí)是一種腳本,但是所有測(cè)試中有趣的細(xì)節(jié)都未涉及到。好的測(cè)試腳本的要素之一是操作指導(dǎo)與測(cè)試人員的水平相匹配、與設(shè)計(jì)測(cè)試的目的相匹配。這個(gè)例子中,沒(méi)有什么明顯的測(cè)試目的。

  這個(gè)差的腳本不一定代表著差的測(cè)試?因?yàn)樗⒉荒艽砣魏伟l(fā)生的測(cè)試活動(dòng)。

  1、打開(kāi)記事本

  2、敲入"hello"

  3、驗(yàn)證"hello"是否出現(xiàn)在屏幕上

  這個(gè)腳本存 在著相反的另一個(gè)問(wèn)題。它描述了完全沒(méi)有必要描述的東西。如果測(cè)試人員依據(jù)腳本測(cè)試,很可能會(huì)糊涂。也許確實(shí)有什么好的理由要這么寫(xiě)腳本吧,但是,測(cè)試目 標(biāo)仍然不清晰。測(cè)試人員的大腦因此沒(méi)有很好的發(fā)揮作用。測(cè)試設(shè)計(jì)人員,要恭喜你啦,你已經(jīng)試圖用對(duì)待一個(gè)動(dòng)畫(huà)戳棍的方式來(lái)對(duì)待一個(gè)”經(jīng)過(guò)生育、妊娠、母 愛(ài)、社交、教育等一系列過(guò)程才產(chǎn)生的這樣一個(gè)復(fù)雜的生命奇跡“。那像你買了一個(gè)iPad,卻拿它當(dāng)奶酪托盤(pán)使用一樣。