軟件測(cè)試用例設(shè)計(jì)難在哪里?
試用例設(shè)計(jì)是測(cè)試過(guò)程中非常重要的一個(gè)活動(dòng),不管是文檔化的設(shè)計(jì)輸出,還是只是存在于他們腦海中的測(cè)試思想,其質(zhì)量都會(huì)直接影響測(cè)試執(zhí)行的質(zhì)量。
盡管每個(gè)測(cè)試人員都掌握了不少的測(cè)試用例設(shè)計(jì)技術(shù)與方法,例如:等價(jià)類(lèi)劃分、狀態(tài)轉(zhuǎn)換測(cè)試等,但是如何將它們應(yīng)用到具體的測(cè)試對(duì)象測(cè)試中去,很多測(cè)試人員都會(huì)感覺(jué)有些力不從心,甚至有無(wú)從下手的感覺(jué)。
下面是針對(duì)某個(gè)功能模塊的一個(gè)簡(jiǎn)單的需求描述:該基本功能是為了創(chuàng)建某個(gè)條目,它的基本需求如下:
假如dataBit0 = 0, 并且cBPDU或者pBPDU的值不為1,那么創(chuàng)建請(qǐng)求會(huì)被拒絕。假如dataBit0 = 0, 并且cBPDU = 1或者pBPDU = 1,在滿(mǎn)足下面條件下可以創(chuàng)建成功: (1)其他的bit不能為1; (2)TD的取值必須是Guranteed; (3)VLANpop的取值必須是disabled; |
假如你得到這樣的一個(gè)需求描述,你準(zhǔn)備如何來(lái)設(shè)計(jì)該功能模塊的測(cè)試用例?通常來(lái)說(shuō),測(cè)試人員拿到需求規(guī)格說(shuō)明之后,會(huì)根據(jù)其中定義的需求條目設(shè)計(jì)測(cè)試用例,類(lèi)似于如下過(guò)程。
圖1 通常的測(cè)試用例設(shè)計(jì)
針對(duì)上面的需求描述,根據(jù)圖1直接設(shè)計(jì)測(cè)試用例,會(huì)不會(huì)覺(jué)得有些迷茫呢?即使測(cè)試人員設(shè)計(jì)了多個(gè)測(cè)試用例,覆蓋了每條測(cè)試需求,是不是也會(huì)覺(jué)得評(píng)估測(cè)試覆蓋率比較困難?
實(shí)際上,需求規(guī)格說(shuō)明通常是針對(duì)開(kāi)發(fā)人員而寫(xiě)的,并不一定直接適合測(cè)試的要求。因此,假如測(cè)試人員希望能夠更好的進(jìn)行測(cè)試用例設(shè)計(jì),需要將需求規(guī)格說(shuō)明轉(zhuǎn)化成為測(cè)試人員可以方便使用的語(yǔ)言很重要,即在需求規(guī)格說(shuō)明和設(shè)計(jì)測(cè)試用例之間增加一個(gè)橋梁:模型。在建立模型的過(guò)程中,測(cè)試人員不僅需要學(xué)習(xí)需求規(guī)格說(shuō)明,同時(shí)也需要了解各種測(cè)試設(shè)計(jì)技術(shù)與方法,并能將兩者數(shù)量的結(jié)合起來(lái)。圖2是增加了“模型”概念的測(cè)試用例設(shè)計(jì)過(guò)程。
圖2 改進(jìn)的測(cè)試用例設(shè)計(jì)
還是以上面的需求描述為例,我通過(guò)學(xué)習(xí)該需求之后,發(fā)現(xiàn)它可能可以與決策表技術(shù)結(jié)合起來(lái)。因此,我將上述需求翻譯為適合決策表技術(shù)的各種條件與輸出,并根據(jù)它們的不同組合得到不同的結(jié)果。圖3是我針對(duì)上述需求描述,基于決策表技術(shù)得到的初始決策表,然后可以基于此進(jìn)行決策表優(yōu)化,直至得到概要和詳細(xì)的測(cè)試用例列表。
圖3 初始決策表
根據(jù)圖2的過(guò)程得到的圖3的結(jié)果,是否覺(jué)得整個(gè)測(cè)試設(shè)計(jì)過(guò)程更加清楚,而且更加容易進(jìn)行測(cè)試覆蓋率等方面的評(píng)估?注意:這里只是根據(jù)需求描述得到的一些測(cè)試用例,并沒(méi)有考慮其他方面的測(cè)試用例,例如非功能測(cè)試用例等。
需求規(guī)格說(shuō)明對(duì)測(cè)試人員很重要,測(cè)試設(shè)計(jì)技術(shù)與方法也很重要,但更重要的是測(cè)試人員如何能夠?qū)烧哂行У慕Y(jié)合起來(lái),并在此基礎(chǔ)之上建立適合測(cè)試設(shè)計(jì)和評(píng)估的“模型”。而這通常是測(cè)試用例設(shè)計(jì)的難點(diǎn)所在,同時(shí)也是體現(xiàn)測(cè)試人員技術(shù)含量的地方。下面是測(cè)試人員在建立模型過(guò)程中可以參考的一些方向:
1、基于黑盒測(cè)試技術(shù),例如:決策表模型、狀態(tài)轉(zhuǎn)換模型、正交矩陣模型等;
2、基于測(cè)試類(lèi)型,例如:質(zhì)量特性模型、缺陷分類(lèi)模型等;
3、基于全局因素的全局因素模型;
4、基于功能交互的功能交互模型;
測(cè)試設(shè)計(jì)過(guò)程中建立有效的“模型”,測(cè)試人員設(shè)計(jì)測(cè)試用例相對(duì)會(huì)比較容易,并且可以很好的提高測(cè)試覆蓋率,從而幫助提升產(chǎn)品質(zhì)量。另一方面,通過(guò)建立模型,也可以幫助測(cè)試人員有效的評(píng)審測(cè)試對(duì)象功能的描述,例如可以發(fā)現(xiàn)需求中定義不清楚、遺漏等方面的問(wèn)題。
posted on 2012-06-05 09:27 順其自然EVO 閱讀(219) 評(píng)論(0) 編輯 收藏