qileilove

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

          軟件測試用例設(shè)計(jì)中的結(jié)構(gòu)設(shè)計(jì)

           優(yōu)秀的開發(fā)工程師不僅是有超強(qiáng)的代碼編寫能力,同時(shí)他還有非凡的概要設(shè)計(jì)和詳細(xì)設(shè)計(jì)能力,那么對于優(yōu)秀的測試工程師來說,不應(yīng)該僅僅是極強(qiáng)的發(fā)現(xiàn)問題的能力,還應(yīng)該具備優(yōu)秀的用例設(shè)計(jì)能力。用例設(shè)計(jì)實(shí)際上包含兩種能力,一種是結(jié)構(gòu)設(shè)計(jì)能力,一種是用例場景設(shè)計(jì)能力,今天我想和大家討論的是前一種能力。

            用例設(shè)計(jì)中的結(jié)構(gòu)設(shè)計(jì)就類似于軟件開發(fā)中的概要設(shè)計(jì),它實(shí)指用例設(shè)計(jì)中的測試項(xiàng)分拆、合并、派生。目前我們測試組有些員工在思考用例設(shè)計(jì)時(shí)包含了這個(gè)環(huán)節(jié),但并沒有將這個(gè)環(huán)節(jié)熟練掌握,且一直困擾著部分人的測試工作開展??赡苡腥藭f,我測試的產(chǎn)品質(zhì)量雖然不是最差,但我的用例設(shè)計(jì)包含了80%的用例設(shè)計(jì)場景,應(yīng)該不錯(cuò)了,干嘛還要強(qiáng)調(diào)用例設(shè)計(jì)中的結(jié)構(gòu)設(shè)計(jì)呢?

            用例設(shè)計(jì)的結(jié)構(gòu)設(shè)計(jì)重要性在于如下幾方面:

            1、合理地拆分測試項(xiàng),有助于保證測試任務(wù)執(zhí)行的分配與并行

            2、合理地拆分測試項(xiàng),有助于和開發(fā)節(jié)奏對應(yīng)起來

            3、合理地拆分測試項(xiàng),有助于保證測試的執(zhí)行與測試用例的當(dāng)初設(shè)計(jì)不脫節(jié)

            4、合理的拆分測試項(xiàng),有助于保證測試覆蓋度

            5、合理的拆分測試項(xiàng),有助于用例場景的設(shè)計(jì)不出現(xiàn)混亂

            6、合理的拆分測試項(xiàng),有助于一個(gè)人全局能力的培養(yǎng)

            ……

            用例設(shè)計(jì)的結(jié)構(gòu)設(shè)計(jì)這一塊究竟有什么方法可循嗎?說句實(shí)話,至少現(xiàn)在我沒有見到任何書籍介紹這一快,我在面試過程中也在了解其他公司關(guān)于這一塊的做法,很多員工聽起來很陌生,可能是這個(gè)能力僅對組長以上的員工有要求吧,有的聽起來雖然不陌生,但是更多和我溝通的是關(guān)于用例設(shè)計(jì)的生成流程,

            對于方法這一塊是不清楚的??偠灾?,用例設(shè)計(jì)的結(jié)構(gòu)設(shè)計(jì)這一塊對于很多公司的經(jīng)驗(yàn)總結(jié)來說還是空白,那就更談不上培訓(xùn)了。關(guān)注這一塊,我是在2001年開始的,當(dāng)時(shí)接受的一個(gè)是視頻會議系統(tǒng)的測試,組里共5個(gè)人,為了將結(jié)構(gòu)設(shè)計(jì)做好,的確費(fèi)了一番周折。通過這幾年來,在不同項(xiàng)目中與不同員工磨合,對用例設(shè)計(jì)的結(jié)構(gòu)設(shè)計(jì)部分摸索了一套如下一系列方法。我現(xiàn)在還不能說最好的,但應(yīng)該是最實(shí)用的,絕對不是為了推銷需要。

            1、基于概要設(shè)計(jì)/詳細(xì)設(shè)計(jì)的模塊(組件)結(jié)構(gòu)設(shè)計(jì)

            2、基于產(chǎn)品需求文檔的模塊結(jié)構(gòu)設(shè)計(jì)

            3、基于數(shù)據(jù)流的結(jié)構(gòu)設(shè)計(jì)

            4、基于事件驅(qū)動的結(jié)構(gòu)設(shè)計(jì)

            5、基于消息驅(qū)動的結(jié)構(gòu)設(shè)計(jì)

            6、基于處理邏輯的結(jié)構(gòu)設(shè)計(jì)

            7、基于條件因素的結(jié)構(gòu)設(shè)計(jì)

            8、基于MVC模型的結(jié)構(gòu)設(shè)計(jì)

            9、基于測試方法的結(jié)構(gòu)設(shè)計(jì)

            測試用例設(shè)計(jì)還要注意著重點(diǎn)

            一、功能

            關(guān)注頁面單個(gè)功能點(diǎn)驗(yàn)證,充分考慮開發(fā)改動的每個(gè)點(diǎn)。這個(gè)是保證開發(fā)每個(gè)已知的修改點(diǎn)都能改對。

            二、關(guān)聯(lián)

            重點(diǎn)考慮修改點(diǎn)對其他模塊的影響,包括代碼的影響和操作數(shù)據(jù)引起的影響。

            比如新增加的功能增加了數(shù)據(jù)庫表的字段,必須關(guān)聯(lián)的驗(yàn)證每個(gè)使用該表的該字段的模塊是否正常工作。難點(diǎn)在于需要分析出已知和未知的影響模塊,考慮的越多,往往遺漏的問題就越少。

            三、流程

            很多系統(tǒng)是有流程的,比如工作流系統(tǒng)。當(dāng)修改了一個(gè)點(diǎn)的時(shí)候,我們必須考慮整個(gè)流程是否能夠正常運(yùn)轉(zhuǎn)起來。

            四、升級

            我們大部分系統(tǒng)都是對已有的系統(tǒng)進(jìn)行升級。對于升級前的數(shù)據(jù),我們必須保證能夠正常工作。升級之前,需要模擬好各種情況。也需要對升級的數(shù)據(jù)庫腳本進(jìn)行充分的檢查。

            五、安全

            比如菜單功能權(quán)限等。

            六、性能

          posted on 2013-05-31 11:39 順其自然EVO 閱讀(177) 評論(0)  編輯  收藏


          只有注冊用戶登錄后才能發(fā)表評論。


          網(wǎng)站導(dǎo)航:
           
          <2013年5月>
          2829301234
          567891011
          12131415161718
          19202122232425
          2627282930311
          2345678

          導(dǎo)航

          統(tǒng)計(jì)

          常用鏈接

          留言簿(55)

          隨筆分類

          隨筆檔案

          文章分類

          文章檔案

          搜索

          最新評論

          閱讀排行榜

          評論排行榜

          主站蜘蛛池模板: 固安县| 夏邑县| 邛崃市| 田阳县| 内黄县| 米脂县| 阜宁县| 弥渡县| 大田县| 铜陵市| 布拖县| 洛隆县| 阿克苏市| 金山区| 江门市| 平远县| 海晏县| 贵南县| 广汉市| 亳州市| 广德县| 本溪| 康定县| 招远市| 体育| 万山特区| 台山市| 海安县| 中山市| 台中市| 龙川县| 交口县| 曲水县| 泗阳县| 武穴市| 科技| 和林格尔县| 绥中县| 南澳县| 蒙自县| 唐山市|