【摘要】軟件測試的核心是測試用例,設計測試用例的方法主要采用黑盒測試的幾種常用方法,它們都有各自長處和不足,但是,在實際測試中,將各種測試用例設計方法綜合到一起使用,才能有效提高測試效率和覆蓋率,找出最多的錯誤,從而保證軟件的質量。
【關鍵詞】測試用例;測試用例設計方法
在使用軟件產(chǎn)品之前,需要對軟件進行測試來確保產(chǎn)品的質量。但是,在進行軟件測試的過程中,出現(xiàn)了很多影響軟件測試的因素,其中,包括軟件本身的復雜度、測試人員的素質、測試方法、測試技術的應用等,想要把一個系統(tǒng)徹底測試是不可能的,在這種情況下,產(chǎn)生了測試用例,它是設計和指定軟件測試過程的基礎,是軟件質量穩(wěn)定的根本保障。
1 測試用例的概述
測試用例是為了某個特殊目標依據(jù)測試環(huán)境,提前編制的一組測試輸入、執(zhí)行條件和預期結果的測試實例。測試用例的內(nèi)容,一般包括:測試用例編號、測試標題、重要級別、預置條件、測試輸入、執(zhí)行步驟和預期結果等。一個成功的測試用例,就是花費最少的時間,用最少的人員,使用最少的資源,找出最多的軟件錯誤。要想設計一個成功的測試用例,就要合理的使用測試用例設計方法,此時,測試用例設計方法就顯得非常重要。
2 測試用例設計方法
一般來說,測試用例設計方法主要采用黑盒測試,它常用的設計方法包括等價類劃分法、邊界值分析法、錯誤推測法、目測法等。
等價類劃分法是把所有可能的輸入數(shù)據(jù)劃分成若干個子集,從每一個子集中選取少數(shù)具有代表性的數(shù)據(jù)作為測試用例。這些具有代表性的數(shù)據(jù)作為某一類的一個例子,在這個例子中發(fā)現(xiàn)了錯誤,那么某一類中的其他例子也就能發(fā)現(xiàn)同樣的錯誤;反之,在這個例子中沒有發(fā)現(xiàn)錯誤,那么某一類的其他例子也就不能發(fā)現(xiàn)錯誤。等價類的劃分需要同時考慮有效等價類和無效等價類,而且合理的劃分可以有效的避免遺漏軟件錯誤。
邊界值分析法作為等價類劃分法的補充,是在輸入或輸出范圍的邊界上進行測試的方法。針對各種邊界情況設計測試用例,可以查找出更多的錯誤。
錯誤推測法是指根據(jù)經(jīng)驗或直覺推測程序中可能存在的各種錯誤,并針對檢查出的這些錯誤編寫測試用例。
目測法是指通過觀測來檢查錯誤,并針對檢查出的這些錯誤編寫測試用例。
下面以某系統(tǒng)修改密碼對話框為例,如圖1所示:
修改密碼要求:新密碼為6~20位的英文字母或數(shù)字,不能為連續(xù)或相同數(shù)字,不能為連續(xù)或相同英文字母。新密碼修改成功后,下次登錄需要使用新密碼。
下面對修改密碼進行分析:
(1)查看界面中文字的正確性、排版和色彩搭配是否合理,本例中,文字正確,排版和色彩搭配合理。
(2)當前密碼可能出現(xiàn)三種情況:當前密碼正確、當前密碼不正確、當前密碼為空。
(3)新密碼可能出現(xiàn)以下幾種情況:新密碼大于等于6位并且小于等于20位、新密碼小于6位、新密碼大于20位,包含非英文字母或數(shù)字、連續(xù)或相同的數(shù)字、連續(xù)或相同的英文字母、新密碼為空。
將當前密碼和新密碼組合在一起,使用合理的測試用例設計方法,設計成各種情況的測試用例:
①當前密碼正確,新密碼大于等于6位并且小于等于20位,為英文字母或數(shù)字,預期結果為修改密碼成功。②當前密碼不正確,新密碼大于等于6位并且小于等于20位,為英文字母或數(shù)字,預期結果為當前密碼不正確。③當前密碼為空,新密碼大于等于6位并且小于等于20位,為英文字母或數(shù)字,預期結果為當前密碼不能為空。④當前密碼正確,新密碼小于6位或大于20位,為英文字母或數(shù)字,預期結果新密碼為6~20位。⑤當前密碼正確,新密碼大于等于6位并且小于等于20位,包含非英文字母或數(shù)字,預期結果為新密碼為英文字母或數(shù)字。⑥當前密碼正確,新密碼大于等于6位并且小于等于20位,連續(xù)或相同的數(shù)字,預期結果為新密碼不能為連續(xù)或相同的數(shù)字。⑦當前密碼正確,新密碼大于等于6位并且小于等于20位,連續(xù)或相同的英文字母,預期結果為新密碼不能連續(xù)或相同的英文字母。⑧當前密碼正確,新密碼為空,預期結果為新密碼不能為空。
從上述測試用例可以看出,①②③⑧使用等價類劃分法、錯誤推測法,④⑤⑥⑦使用等價類劃分法、邊界值分析法、錯誤推測法。
在進行測試用例設計時,每一種測試用例設計方法都有自己的長處和不足,具體到每一個測試用例會涉及到多種測試用例設計方法。一般的情況下,首先,使用目測法對界面進行觀測,查看界面中文字的正確性、排版和色彩搭配是否合理,設計測試用例。其次,使用等價類劃分法對區(qū)間、數(shù)值、數(shù)值集合、限制條件或規(guī)則進行劃分,分為有效等價類和無效等價類。再次,在等價類劃分法的基礎上使用邊界值分析法對輸入值的范圍或值的個數(shù)進行劃分,分為剛達到范圍的邊界值以及最大個數(shù)、最小個數(shù)、比最小個數(shù)小1、比最大個數(shù)大1的數(shù)。最后,使用錯誤推測法追加一些經(jīng)驗或直覺推測的測試用例。但是,在實際測試中,將各種測試用例設計方法綜合到一起使用,才能有效提高測試效率和覆蓋率,找出最多的錯誤,從而保證軟件的質量。這就需要理解并掌握更多的測試用例設計方法的原理,積累更多的測試經(jīng)驗,來提高測試水平。
參考文獻:
[1]張倩倩,趙星漢,高湘飛.軟件測試用例的設計方法[J].電子技術與軟件工程,2018(11).
[2]黃甫大雙.淺談軟件測試用例的設計方法與實現(xiàn)[J].電腦迷,2016(9).
[3]居美云.軟件測試用例設計[J].信息與電腦(理論版),2016(12).
[4]李剛,姚紅.軟件測試用例設計的方法與實現(xiàn)[J].大眾科技,2012(1).
作者簡介:
李世娟(1980-),女,漢族,河北邢臺人,碩士,石家莊財經(jīng)職業(yè)學院,高級工程師,研究方向:軟件技術。