方法:
等價類劃分法
邊界值分析法
等價類+邊界值
基本路徑分析法
因果圖法
場景設計法
錯誤猜想法
正交表與TCG的使用
等價類劃分法:
通常可分爲有效等價類和無效等價類
好比:在一個系統中,填寫一個多少歲的成年人數學考了多少分(假設成年人年齡爲x,0<x<=18,數學成績爲y:0<=y<=100
那麼年齡按照等價類劃分可分爲x<0,0<x<=18,x>18,有效等價類是0<x<=18,無效等價類是x<0,x>18
數學成績按照等價類劃分可分爲y<0,0<=y<=100,y>100,有效等價類是0<=y<=100,無效等價類是y<0,y>100
邊界值分析法:(通常是與等價類劃分一塊兒使用)
通常邊界值分析是由於程序開發循環體時的取數可能會由於<,<=搞錯。
好比下面代碼
for(int i = 0;i <100; i ++)
{
int j = i+1;
System.out.println("循環第「+j+"次")//循環地作某件事情
}
這裏的程序是循環了100次,因此會作100次;
若是程序員不當心,把i <100寫成i <= 100,則會溢出,這時候邊界值檢查是一個很好的測試方法。
好比:在一個系統中,填寫一個多少歲的成年人數學考了多少分(假設成年人年齡爲x,0<x<=18,數學成績爲y:0<=y<=100
根據上面的等價類劃分法咱們可知,年齡的有效等價類是0<x<=18,因此邊界值就是0,1,18,19
數學成績的,有效等價類是0<=y<=100,因此邊界值就是-1,0,100,101
基本路徑分析法:(通常根據流程圖)
好比審批合同:
編輯合同-提交-審覈經過-建賬套
編輯合同-提交-審覈不經過-修改-提交-審覈經過-建賬套
因果圖法(通常與斷定表一塊兒使用)
案例:html
(1)分析緣由及結果
(2)畫出因果圖
(3)編寫決策表
(4)設計測試用例
場景設計法
若是需求規則說明書是採用uml的用例設計,那麼能夠比較輕鬆地經過把系統用例影射成測試用例的方法來設計測試用例。須要覆蓋系統用例中的主成功場景和擴展場景,而且須要適當補充各類正反面的測試用例和考慮出現異常的情形。
場景設計法須要測試人員充分發揮對用戶實際業務場景的想象。
錯誤猜想法
錯誤猜想法是測試經驗豐富的人喜歡使用的一種測試用例設計方法。
通常這種方法是基於經驗和直覺推測程序中可能發送的各類錯誤,有針對性地設計。只能做爲一種補充。
例如,對於一個調用excel的程序,直覺告訴測試人員,它可能發生的錯誤是在調用的先後過程,好比,用戶的計算機沒有安裝excel,則可能調用失敗,甚至拋出異常,所以要作一下環境測試;又如調用了excel後忘記釋放對excel的引用,從而致使excel的進程駐留,所以須要檢查一下進程的列表看excel進程是否在程序關閉後仍然存在。
技巧:最重要的是要思考和分析測試對象的各個方面,多參考之前發現的bug的相關數據,總結的經驗,我的多考慮異常的狀況、反面的狀況、特殊的輸入,以一個攻擊者的態度對待程序,就能設計出比較完善的測試用例來。
正交表法與TCG的使用
正交表法是一種有效減小測試用例個數的設計方法。
經過根據不一樣的輸入參數,而設計出的不一樣的用例。
例如:咱們如今建立客戶,輸入如下的3個參數:
編號:空、中文
名稱:空、中文
性別:男、女
如下是用TCG工具映射出來的對應正交:
利用均勻試驗法設計測試用例
該方法是與正交表法相似的一種測試用例設計法。
組合覆蓋(PICT使用)
瞭解組合覆蓋: http://www.pairwise.org/程序員
微軟的PICT小工具下載:http://msdn.Microsoft.com/en-us/testing/bb980925.aspx安全
PICT接受一個純文本的Model文件做爲輸入,而後輸出測試用例集合:網絡
Model文件格式:<ParamName> : <value1>,<value2>….工具
好比,輸入的文件分別有不一樣參數選擇:性能
Type:Span,Mirror,Single測試
Size:10,,100,500ui
File system:FAT,FAT32,NTFSspa
把上面的內容存爲Model.txt,存儲在D:\PICT.net
在命令行輸入如下命令(先進入該文件夾): 「D:\PICT\Model.txt」
可產生全部可能的組合。
若是想把產生的測試用例存儲到某個文件,則可輸入如下命令:「D:\PICT\Model.txt」 > 「D:\PICT\OutPut.txt」
還有不少相似的工具,可參考:http://www.pairwise.org/tools.asp
分類數與TESTONA的使用
http://www.berner-matter.com/en/products/testona/index.html
TESTONA下載地址:http://www.testona.net/cms/upload/3_Raw/testonaLightSetup_4.1.1.exe
測試用例設計的自動化
目前,測試用例的設計大部分是須要手工的,這也是因爲設計的複雜性和靈活性決定的。在自動化測試領域,測試的執行是首先被自動化的一個方面,目前已經取得了長足的進度。可是在測試用例的設計方面,自動化程度很是低。
目前在測試用例設計方面的自動化主要集中在測試數據的生成方面,一些工具也是集中在幫助測試人員產生數據和篩選數據方面,例如TConfig,PICT等。另外,像DataFactory這樣的工具則專一於產生大批量的數據表數據。
注意:不要認爲測試用例的設計是一個階段,測試用例的設計也須要迭代,在軟件開發的不一樣階段都 要回來從新審視和完善測試用例。
測試用例的評價(評審)
測試用例設計出來了,如何提升測試用例設計的質量?
(1)同行的評審:經過討論,協做來完成測試用例的設計,儘量全面的覆蓋需求。(一我的的思惟性有侷限性)
(2)除了同行評審,應儘可能引入用戶參與到測試用例的設計中來
注意:參與到測試用例評審的人除了測試人員本身和管理層外,還應該包括最終用戶或者顧客表明,還有開發人員。