【软件测试】等价类划分
等價(jià)類劃分定義:
等價(jià)類劃分法是一種典型的、重要的黑盒測試方法,它將程序所有可能的輸入數(shù)據(jù)(有效的和無效的)劃分成若干個(gè)等價(jià)類。然后從每個(gè)部分中選取具有代表性的數(shù)據(jù)當(dāng)做測試用例進(jìn)行合理的分類,測試用例由有效等價(jià)類和無效等價(jià)類的代表組成,從而保證測試用例具有完整性和代表性。(摘自百度百科)
在第一節(jié)課中,講到黑盒測試主要是以用戶的角度,從輸入數(shù)據(jù)與輸出數(shù)據(jù)的對應(yīng)關(guān)系出發(fā)進(jìn)行測試。所以利用等價(jià)類劃分的方法設(shè)計(jì)測試用例可以不考慮程序的內(nèi)部結(jié)構(gòu),注意選擇適當(dāng)?shù)牡葍r(jià)類,認(rèn)真分析和推敲說明書的各項(xiàng)需求,特別是功能需求,盡可能多地發(fā)現(xiàn)錯(cuò)誤。
等價(jià)類劃分分類:
主要分為有效等價(jià)類和無效等價(jià)類。
有效等價(jià)類:是指對于程序的規(guī)格說明來說是合理的、有意義的輸入數(shù)據(jù)構(gòu)成的集合。
無效等價(jià)類:與其上相反。
等價(jià)類劃分方法:
1. 確定等價(jià)類 - 數(shù)據(jù)分類。 分出有效等價(jià)類和無效等價(jià)類。
2. 對有效等價(jià)類進(jìn)一步進(jìn)行分割,直到不能劃分為止,形成等價(jià)類表。
3. 設(shè)計(jì)一個(gè)新的測試用例,使其盡可能多的覆蓋尚未被覆蓋到的有效等價(jià)類, 重復(fù)這一步,直到所有的有效等價(jià)類都被覆蓋為止。
4. 對無效等價(jià)類進(jìn)一步進(jìn)行分割,直到不能劃分為止,形成無效等價(jià)類表。
5. 設(shè)計(jì)一個(gè)新的測試用例,使得只覆蓋一個(gè)無效等價(jià)類表,重復(fù)著一部, 直到所有的無效等價(jià)類都被覆蓋為止。
舉個(gè)栗子
某公司招聘程序猿,要求年齡范圍在20~30歲。
辣么20~30歲之間的程序猿即為有效等價(jià)類,小于20歲或者30歲以上的程序猿以及所有非程序猿都是無效等價(jià)類。可以看出其實(shí)這有兩個(gè)條件,一個(gè)是年齡,一個(gè)是技術(shù),兩個(gè)同時(shí)滿足才是有效等價(jià)類。
|
有效等價(jià)類 |
無效等價(jià)類 |
|
|
年齡 |
[20,30] |
<20 or >30 |
|
技術(shù) |
程序猿 |
非程序猿 |
測試用例:
| 年齡 | 技術(shù) | result | |
| 1 | 25 | 程序猿 | √ |
| 2 | 35 | 程序猿 | × |
| 3 | 15 | 程序猿 | × |
| 4 | 25 | 司機(jī) | × |
| 5 | 35 | 司機(jī) | × |
以上用例即可全部覆蓋。
注:在確定分類是注意相互之間不能有重復(fù)或包含,選擇用例時(shí)也要確保全面。
總結(jié)
以上是生活随笔為你收集整理的【软件测试】等价类划分的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: GoJS超详细入门(插件使用无非:引包、
- 下一篇: C++编译错误C2365