qileilove

          blog已經(jīng)轉(zhuǎn)移至github,大家請(qǐng)?jiān)L問(wèn) http://qaseven.github.io/

          軟件測(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)  編輯  收藏


          只有注冊(cè)用戶(hù)登錄后才能發(fā)表評(píng)論。


          網(wǎng)站導(dǎo)航:
           
          <2012年6月>
          272829303112
          3456789
          10111213141516
          17181920212223
          24252627282930
          1234567

          導(dǎo)航

          統(tǒng)計(jì)

          常用鏈接

          留言簿(55)

          隨筆分類(lèi)

          隨筆檔案

          文章分類(lèi)

          文章檔案

          搜索

          最新評(píng)論

          閱讀排行榜

          評(píng)論排行榜

          主站蜘蛛池模板: 宜宾市| 锡林浩特市| 万州区| 子长县| 辰溪县| 云和县| 明溪县| 乐都县| 莱阳市| 揭东县| 玛多县| 霞浦县| 寿宁县| 新建县| 平和县| 奉化市| 吉林省| 凤山市| 九龙坡区| 正安县| 无棣县| 伊金霍洛旗| 鱼台县| 大安市| 昌吉市| 许昌市| 鄂托克前旗| 吉隆县| 信宜市| 屏东县| 弋阳县| 禄丰县| 滨海县| 彝良县| 旌德县| 随州市| 凤翔县| 搜索| 尚义县| 江西省| 临邑县|