測試用例與輸入數(shù)據(jù)的設(shè)計(jì)方法
測試用例的設(shè)計(jì)是測試設(shè)計(jì)的重要內(nèi)容,關(guān)于測試用例的設(shè)計(jì)方法,當(dāng)前不少出版的測試書和發(fā)表的測試文章,不少存在著表述錯(cuò)誤,主要是把測試用例中的輸入數(shù)據(jù)的設(shè)計(jì)方法與測試用例的設(shè)計(jì)方法混為一談,對(duì)測試初學(xué)者和測試用例設(shè)計(jì)人員產(chǎn)生誤導(dǎo)。
這種錯(cuò)誤的主要表現(xiàn)舉例如下:
測試用例的設(shè)計(jì)方法包括:
一、等價(jià)類劃分法
二、邊界值法
三、功能圖與判定表法
四、錯(cuò)誤推測法
五、用戶場景法
六、……
其實(shí),測試用例中輸入數(shù)據(jù)的設(shè)計(jì)方法只是測試用例設(shè)計(jì)方法的一個(gè)子集,上面列出的集中方法都是確定黑盒測試用例的輸入測試數(shù)據(jù)的一般方法,而不是測試用例的設(shè)計(jì)方法。
除了確定輸入數(shù)據(jù)之外,測試用例的設(shè)計(jì)還包括如何確定測試用例的設(shè)計(jì)策略,如何組織設(shè)計(jì)用例,如何從測試需求等文檔創(chuàng)建完整的測試用例。
對(duì)測試執(zhí)行人員來說,測試用例的表示內(nèi)容包括以下幾個(gè)方面:
- 測試用例的測試目標(biāo)
- 測試用例的被測功能點(diǎn)描述
- 測試用例的測試運(yùn)行環(huán)境
- 測試用例的執(zhí)行方法(包括測試步驟,輸入測試數(shù)據(jù)或測試腳本)
- 測試期望的結(jié)果
- 執(zhí)行測試的實(shí)際結(jié)果
- 其他輔助說明
乍看起來有點(diǎn)像測試策劃(計(jì)劃)考慮的因素。但是測試用例的設(shè)計(jì)和測試計(jì)劃的設(shè)計(jì)關(guān)注點(diǎn)不同,測試計(jì)劃考慮的宏觀和全面些,而測試用例考慮的更窄。
設(shè)計(jì)測試用例首先要考慮以下幾個(gè)問題:
- 為什么要設(shè)計(jì)測試用例?
- 誰來寫測試用例?這些寫測試用例的人的測試技術(shù)和對(duì)被測試產(chǎn)品了得有多深入?
- 測試用例寫給誰看,多少人將試用測試用到?
- 分配給寫測試用例的時(shí)間是多長?要安排幾個(gè)人來寫?
- 怎么在測試用例的成本、質(zhì)量和效率方面達(dá)到平衡?
只有回答了這些問題,才能確定測試用例的具體寫作方法和表現(xiàn)形式。一般而言,公司里分配寫作測試用例的時(shí)間并不長,而且提供的文檔也不全面,所以寫測試用例要符合測試部門的當(dāng)前現(xiàn)狀和項(xiàng)目的測試特點(diǎn),綜合考慮,所以看起來有點(diǎn)像測試計(jì)劃的某些內(nèi)容,但是對(duì)問題的細(xì)化程度不一樣。
測試用例的設(shè)計(jì)是一項(xiàng)復(fù)雜的測試工作,測試用例的設(shè)計(jì)方法需要考慮測試的目標(biāo),被測試軟件的特性,測試者人力資源的技術(shù)和能力,測試組織形式,測試進(jìn)度、測試成本等多個(gè)方面。
在設(shè)計(jì)測試用例時(shí),可以綜合運(yùn)用以下方法:
一、根據(jù)被測軟件的功能和特性點(diǎn)設(shè)計(jì)測試用例:
- 根據(jù)被測試功能點(diǎn)設(shè)計(jì)測試用例
- 根據(jù)軟件性能指標(biāo)設(shè)計(jì)測試用例
- 根據(jù)軟件的兼容性要求設(shè)計(jì)測試用例
- 根據(jù)軟件的國際化用戶要求設(shè)計(jì)國際化測試用例
- 根據(jù)...設(shè)計(jì)...用例
二、 根據(jù)軟件的組成元素設(shè)計(jì)測試用例
- 設(shè)計(jì)軟件設(shè)計(jì)用例
- 設(shè)計(jì)聯(lián)機(jī)幫助和文檔手冊(cè)的設(shè)計(jì)用例
- 設(shè)計(jì)軟件的模版等數(shù)據(jù)文件的測試用例
三、 根據(jù)軟件的開發(fā)階段(里程碑)設(shè)計(jì)測試用例
- 單元測試設(shè)計(jì)用例
- 集成測試設(shè)計(jì)用例
- 系統(tǒng)測試設(shè)計(jì)用例
- 驗(yàn)收測試設(shè)計(jì)用例
具體到設(shè)計(jì)每個(gè)測試用例而言,可以考慮如下:
1、據(jù)被測的最小目標(biāo),確定測試用例的測試目標(biāo)
2、根據(jù)用戶使用環(huán)境確定測試環(huán)境
3、根據(jù)以下因素確定測試用例的步驟
- 用戶使用軟件的步驟或者特定場景,確定測試執(zhí)行步驟地具體內(nèi)容
- 執(zhí)行者對(duì)產(chǎn)品的熟悉程度確定步驟的詳細(xì)或粗略程度
- 被測特性的復(fù)雜性也決定步驟的詳細(xì)或粗略程度
- 測試用例的執(zhí)行方法(手工測試或自動(dòng)化測試)確定步驟地內(nèi)容表示
- 自動(dòng)測試用例要編寫和調(diào)試測試腳本,手工測試給出執(zhí)行步驟
4、據(jù)設(shè)計(jì)規(guī)格說明書確定期望的測試用例執(zhí)行結(jié)果
5、......
確定測試用例的輸入數(shù)據(jù)確實(shí)對(duì)于測試用例非常重要,它決定著測試用例的執(zhí)行效果和效率,但是確定輸入測試數(shù)據(jù)只是設(shè)計(jì)測試用例的一個(gè)步驟,而不是全部。因此,不能把測試用例的設(shè)計(jì)方法等同于測試用例數(shù)據(jù)的方法。
【編輯推薦】