溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

測(cè)試先知和啟發(fā)式方法

發(fā)布時(shí)間:2020-06-01 03:31:41 來(lái)源:網(wǎng)絡(luò) 閱讀:826 作者:博文視點(diǎn) 欄目:軟件技術(shù)

 


測(cè)試人員拿到測(cè)試任務(wù)時(shí),需要考察兩類基本情況。第一類是測(cè)試人員的情況:

n  測(cè)試人員的測(cè)試經(jīng)驗(yàn)怎么樣,豐富還是欠缺?

n  測(cè)試人員對(duì)被測(cè)產(chǎn)品的行業(yè)經(jīng)驗(yàn)怎么樣,熟悉還是了解?

n  測(cè)試人員對(duì)被測(cè)產(chǎn)品的需求了解怎么樣,熟悉還是了解?

第二類是被測(cè)產(chǎn)品的情況:

n  產(chǎn)品開發(fā)目前處于什么階段?

n  產(chǎn)品是否經(jīng)過了測(cè)試,使用了哪些類型的測(cè)試,覆蓋了哪些功能和屬性?

n  產(chǎn)品目前的風(fēng)險(xiǎn)或潛在問題有哪些?

測(cè)試人員應(yīng)該仔細(xì)分析和理解這些情況。在時(shí)間壓力和業(yè)務(wù)質(zhì)量壓力下,測(cè)試人員需要根據(jù)正確的信息來(lái)驅(qū)動(dòng)測(cè)試活動(dòng),這樣才會(huì)取得較好的效果。

首先測(cè)試人員需要非常清楚自己的情況,也就是自己所擁有的知識(shí)(Knowledge),包括產(chǎn)品知識(shí)、行業(yè)知識(shí)、測(cè)試技術(shù)、開發(fā)技術(shù)和計(jì)算機(jī)基礎(chǔ)等。

檢查這些知識(shí)是為了在測(cè)試時(shí)能夠快速和有效地確定所發(fā)現(xiàn)的問題是否是差評(píng)缺陷。即測(cè)試人員需要綜合各種知識(shí)以構(gòu)造一組測(cè)試先知,從而高效地識(shí)別產(chǎn)品缺陷。一種構(gòu)造測(cè)試先知的可行方法是參考HICCUPPSF)啟發(fā)式規(guī)則[Bolton05],它們通過一致性檢查來(lái)識(shí)別產(chǎn)品缺陷。

n  歷史(History):目前所做的產(chǎn)品的版本是否與過去的版本相一致。

n  愿景(Image):產(chǎn)品是否與開發(fā)組織的愿景相一致。

n  相似產(chǎn)品(Comparable Products):產(chǎn)品是否與類似的產(chǎn)品相一致。

n  聲明(Claims):產(chǎn)品是否與重要人物的聲明相一致。

n  用戶期望(User’s Expectations):產(chǎn)品是否與用戶期望相一致。

n  產(chǎn)品自身(Product):產(chǎn)品中可比較的各個(gè)功能是否一致。

n  目的(Purpose):產(chǎn)品是否與其(明確的或隱含的)目的相一致。

n  法規(guī)(Statutes):產(chǎn)品是否與適用的法律相一致。

n  常識(shí)(Familiarity):產(chǎn)品是否與常識(shí)相一致。

盡管我們有很多方式去豐富測(cè)試先知,但不支付足夠的時(shí)間成本很難達(dá)到非常完美的程度(所有預(yù)期輸出都在測(cè)試之前明確下來(lái)是需要很多時(shí)間成本投入的),因此我們?cè)谔剿魇綔y(cè)試過程中往往會(huì)遇到以下問題:

n  沒有測(cè)試先知可以使測(cè)試人員提前確定所觀察到的系統(tǒng)行為必定是正確或錯(cuò)誤的。

n  沒有一個(gè)單獨(dú)的測(cè)試先知可以說明某個(gè)功能在任何時(shí)間或任何情況下都是正確工作的。

n  有些功能看上去是正常工作的,但在某些情況下會(huì)失敗,且會(huì)影響其他測(cè)試先知的正確性和適用性。

可見,測(cè)試人員構(gòu)造測(cè)試先知時(shí),肯定會(huì)遇到很多困難,那么該如何解決呢?以下是三個(gè)可能的思路。

n  忽略這個(gè)問題(也許這個(gè)信息的價(jià)值從成本角度考慮不值得)。

n  簡(jiǎn)單化這個(gè)問題(改善可測(cè)試性以獲得更多的信息、分析需求、規(guī)約和代碼,從而獲得更簡(jiǎn)單的檢查規(guī)則)。

n  轉(zhuǎn)移這個(gè)問題(考慮問題的相關(guān)性,從類似問題下手)。

在測(cè)試設(shè)計(jì)過程中,測(cè)試人員還可以使用啟發(fā)式方法(Heuristics)來(lái)產(chǎn)生更多更好的測(cè)試思路,例如[Bach21]

n  引導(dǎo)詞啟發(fā)法(Guideword Heuristics):一些詞語(yǔ)或標(biāo)簽?zāi)芤龑?dǎo)測(cè)試人員發(fā)掘自身的知識(shí)和經(jīng)驗(yàn),產(chǎn)生新的測(cè)試思路。。

n  觸發(fā)器啟發(fā)法(Trigger Heuristics):一些存在于事件或條件中的想法,能提醒測(cè)試人員采用另外一種方式來(lái)進(jìn)行試驗(yàn),就像思維的鬧鐘一樣。

n  副標(biāo)題啟發(fā)法(Subtitle Heuristics):能幫助測(cè)試人員重構(gòu)測(cè)試想法并獲得更多的選擇點(diǎn)。

n  啟發(fā)式模型(Heuristics Model):一組系統(tǒng)性的想法能幫助測(cè)試人員控制、管理和挖掘更多的想法。

實(shí)際上,人們?cè)谌粘I钪幸步?jīng)常使用啟發(fā)式方法,例如,我們常用如下簡(jiǎn)單的規(guī)則處理復(fù)雜的現(xiàn)實(shí)問題:

n  酒后駕駛非常危險(xiǎn)。

n  一鳥在手要強(qiáng)于二鳥在林。

n  不入虎穴,焉得虎子。

n  人們有時(shí)在計(jì)算機(jī)旁邊隱藏自己的密碼,嘗試從那里尋找。

n  假期商店一般較晚開門。

n  如果你的計(jì)算機(jī)出現(xiàn)了莫名其妙的行為,重啟。如果還是有問題,重裝操作系統(tǒng)。

n  如果這是個(gè)真正重要的任務(wù),你的老板會(huì)跟蹤它,否則,你可以忽略它。

由這些例子可知,啟發(fā)式方法是一種經(jīng)驗(yàn)方法,它針對(duì)復(fù)雜的問題提出了一種簡(jiǎn)單的、較可能成功的解決思路。使用啟發(fā)式方法,人們可以快速地采取行動(dòng),在實(shí)踐中去探索答案,從而避免陷于無(wú)止境的問題分析,毫無(wú)進(jìn)展。然而,啟發(fā)式方法只是一種“捷徑”,它不保證提供了“最佳答案”,也不能確??偸翘峁?ldquo;正確答案”。因此,明智的測(cè)試人員不會(huì)依賴特定的、單一的啟發(fā)式方法,他會(huì)綜合運(yùn)用多個(gè)啟發(fā)式方法,并根據(jù)實(shí)踐結(jié)果調(diào)整測(cè)試方法和測(cè)試先知。

本文節(jié)選自《探索式測(cè)試實(shí)踐之路》一書

 

測(cè)試先知和啟發(fā)式方法

史亮,高翔著

電子工業(yè)出版社出版

 

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI