測試用例的設(shè)計方法有哪些
軟件測試
1已閱讀
2022-06-23 10:16:08
導(dǎo)讀
測試用例都會用到哪些方法呢?你是否全部都知道呢?今天小編就來介紹一下測試用例的設(shè)計方法有哪些?還會舉例說明,一起來了解一下吧。
一般來說,測試用例的常見設(shè)計方法有六種,分別是等價類劃分、邊界值分析法、錯誤推測法、因果圖方法、正交試驗設(shè)計法和判定表法。下面小編將舉例為大家一一說明解釋這六種測試用例的設(shè)計方法,感興趣的小伙伴趕緊接著看下去吧!
1、等價類劃分:
等價類是指某個輸入域的子集合.在該子集合中,各個輸入數(shù)據(jù)對于揭露程序中的錯誤都是等效的.并合理地假定:測試某等價類的代表值就等于對這一類其它值的測試.因此,可以把全部輸入數(shù)據(jù)合理劃分為若干等價類,在每一個等價類中取一個數(shù)據(jù)作為測試的輸入條件,就可以用少量代表性的測試數(shù)據(jù).取得較好的測試結(jié)果.等價類劃分可有兩種不同的情況:有效等價類和無效等價類。
舉例:我們要測試一個用戶名是否合法,用戶名的定義為:8位數(shù)字組成的字符。我們可以先劃分子集:空用戶名,1-7位數(shù)字,8位數(shù)字,9位或以上數(shù)字,非數(shù)字。然后從每個子集選出若干個有代表性的值。
2、邊界值分析法:
邊界值分析方法是對等價類劃分方法的補充。測試經(jīng)驗告訴我,大量的錯誤是發(fā)生在輸入或輸出范圍的邊界上,而不是發(fā)生在輸入輸出范圍的內(nèi)部.因此針對各種邊界情況設(shè)計測試用例,可以查出更多的錯誤。使用邊界值分析方法設(shè)計測試用例,應(yīng)確定邊界情況.通常輸入和輸出等價類的邊界,就是應(yīng)著重測試的邊界情況.應(yīng)當選取正好等于,剛剛大于或剛剛小于邊界的值作為測試數(shù)據(jù),而不是選取等價類中的典型值或任意值作為測試數(shù)據(jù)。
舉例:假定X為整數(shù),10≤X≤100,那么X在測試中應(yīng)該取的邊界值為:10,11,99,100。
3、錯誤推測法:
基于經(jīng)驗和直覺推測程序中所有可能存在的各種錯誤,從而有針對性的設(shè)計測試用例的方法.錯誤推測方法的基本思想:列舉出程序中所有可能有的錯誤和容易發(fā)生錯誤的特殊情況,根據(jù)他們選擇測試用例-例如,在單元測試時曾列出的許多在模塊中常見的錯誤-以前產(chǎn)品測試中曾經(jīng)發(fā)現(xiàn)的錯誤等,這些就是經(jīng)驗的總結(jié)。還有,輸入數(shù)據(jù)和輸出數(shù)據(jù)為0的情況。輸入表格為空格或輸入表格只有一行-這些都是容易發(fā)生錯誤的情況??蛇x擇這些情況下的例子作為測試用例.
舉例:錯誤推測法沒有固定的形式,依靠的是經(jīng)驗和直覺,很多時候,我們都會不知不覺的使用到。
4、因果圖方法:
前面介紹的等價類劃分方法和邊界值分析方法,都是著重考慮輸入條件,但未考慮輸入條件之間的聯(lián)系,相互組合等-考慮輸入條件之間的相互組合,可能會產(chǎn)生一些新的情況-但要檢查輸入條件的組合不是一件容易的事情,即使把所有輸入條件劃分成等價類,他們之間的組合情況也相當多-因此必須考慮采用一種適合于描述對于多種條件的組合,相應(yīng)產(chǎn)生多個動作的形式來考慮設(shè)計測試用例-這就需要利用因果圖(邏輯模型)-因果圖方法生成的就是判定表-它適合于檢查程序輸入條件的各種組合情況.
舉例:某軟件規(guī)格說明書包含這樣的要求:列字符必須是A或B,第二列字符必須是一個數(shù)字,在此情況下進行文件的修改,但如果列字符不正確,則給出信息L;如果第二列字符不是數(shù)字,則給出信息M。
5、正交試驗設(shè)計法:
有時候,可能因為大量的參數(shù)的組合而引起測試用例數(shù)量上的激增,同時,這些測試用例并沒有明顯的優(yōu)先級上的差距,而測試人員又無法完成這么多數(shù)量的測試,就可以通過正交表來進行縮減一些用例,從而達到盡量少的用例覆蓋盡量大的范圍的可能性。
舉例:某所大學通信系共2個班級,剛考完某一門課程,想通過“性別”、“班級”和“成績”這三個查詢條件對通信系這門課程的成績分布,男女比例或班級比例進行人員查詢。按照傳統(tǒng)的方式,我們將會列舉所有的組合,來編寫測試用例,組合個數(shù)是2*2*2=8。當組合條件不多的時候,窮舉暫時沒問題,但是,一旦條件多了,組合個數(shù)就會以指數(shù)形式增長。這個時候,就要用到正交表了,通過選出有代表性的測試實例,達到以少數(shù)代替全面的效果。
6、判定表法:
判定表法又稱為策略表,基于策略表的測試,是功能測試中嚴密的測試方法。該方法適合于邏輯判斷復(fù)雜的場景,通過窮舉條件獲得結(jié)果,對結(jié)果再進行優(yōu)化合并,會得到一個判斷清晰的策略表。
舉例:某公司的對客戶分類標準如下:顧客每次訂貨額在1000元以上(含1000元),信譽好的,訂單設(shè)“優(yōu)先”標志;信譽不好,但是老客戶的,訂單設(shè)“優(yōu)先”標志;信譽不好,但是新客戶的,訂單設(shè)“正?!睒酥?每次訂貨額在1000元以下,訂單設(shè)“正?!睒酥?。
因為窮舉了所有條件,所以可以說這個判斷是正確的。下一步是對這個表進行合并優(yōu)化。例如,從編號為1,2的列可以看出,顧客訂單>=1000,信譽好,不管是新顧客還是老顧客,都設(shè)為優(yōu)先,這樣一來,我們就可以得到更清晰的邏輯判斷,也可以更好的協(xié)助我們編寫測試用例。而決策表,對于開發(fā)人員來說一樣有用。
看完上面的內(nèi)容是不是收獲滿滿呢?以上就是本篇文章的全部內(nèi)容,如有疑問歡迎前來咨詢了解。