對乙個測試工程師來說,測試用例的設計編寫是一項必須掌握的能力,但有效的設計和熟練的編寫測試用例卻是乙個十分複雜的技術,測試用例編寫者不僅要掌握軟體測試技術和流程,而且要對整個軟體不管從業務,還是對軟體的設計、程式模組的結構、功能規格說明等都要有透徹的理解。
測試的設計方法不是單獨存在的,具體到每個測試專案裡都有很多種方法,每種型別都有各自的特點。
是為某個業務目標,而編制的一組由測試輸入,執行條件以及預期結果組成的案例
在開始實施測試之前設計好測試用例,可以避免盲目測試並提高測試效率。
測試用例的使用令軟體測試的實施重點突出、目的明確。
在軟體版本更新後只需修正少部分的測試用例便可展開測試工作,降低工作強度、縮短專案週期。
檢驗軟體是否滿足客戶需求、體現乙個測試人員的工作量、展現測試用例的設計思路
等價類劃分是指分步驟地把海量(無限)的測試用例集減得很小,但過程同樣有效。
等價類 :何為等價類,某個輸入域的集合,在這個集合中每個輸入條件都是等效的。
一般可分為有效等價類和無效等價類
比如:乙個青少年考試的分數(備註13-17歲為青少年)
假設青少年年齡為x,13<=x<=17,數學成績為y:0<=y<=100
那麼年齡按照等價類劃分可分為x<13,13<=x<=17,x>17,有效等價類是13<=x<=17,無效等價類是x<13,x>17
數學成績按照等價類劃分可分為y<0,0<=y<=100,y>100,有效等價類是0<=y<=100,無效等價類是y<0,y>100
一般邊界值分析是因為程式開發迴圈體時的取數可能會因為<,<=搞錯。
比如下面**
for(int i = 0;i <100; i ++)
這裡的程式是迴圈了100次,所以會做100次;
如果程式設計師不小心,把i <100寫成i <= 100,則多迴圈新增一次,這時候邊界值檢查是乙個很好的測試方法。
比如:在乙個系統中,填寫乙個多少歲的青少年考了多少分(假設成年人年齡為x,13<=x<=17,數學成績為y:0<=y<=100
根據上面的等價類劃分法我們可知,年齡的有效等價類是13<=x<=17,所以邊界值就是12, 18
數學成績的,有效等價類是0<=y<=100,所以邊界值就是-1,0,100,101
對資料進行軟體測試,就是在檢查使用者輸入的資訊、返回的結果以及中間計算結果是否正確。即使最簡單的程式要處理的資料量也可能極大,使這些資料得以測試的技巧是,根據一些關鍵的原則進行等價類的劃分,以合理減少測試用例,這些關鍵的原則是:邊界條件,次邊界條件、空值和無效資料。
因果圖法比較適合輸條件比較多的情況,測試所有的輸入條件的排列組合。所謂的原因就是輸入,所謂的結果就是輸出。
恒等:若原因出現,則結果出現;若原因不出現,則結果不出現。
非(~):若原因出現,則結果不出現;若原因不出現,則結果出現。
或(∨):若幾個原因中有乙個出現,則結果出現;若幾個原因都不出現,則結果不出現。
與(∧):若幾個原因都出現,結果才出現;若其中有乙個原因不出現,則結果不出現。
現在的軟體幾乎都是用事件觸發來控制流程的,事件觸發時的情景便形成了場景,而同一事件不同的觸發順序和處理結果就形成事件流。這種在軟體設計方面的思想也可以引入到軟體測試中,可以比較生動地描繪出事件觸發時的情景,有利於測試設計者設計測試用例,同時使測試用例更容易理解和執行。
用例場景是通過描述流經用例的路徑來確定的過程,
這個流經過程要從用例開始到結束遍歷其中所有基本流和備選流。
錯誤推測法:根據經驗或直覺推測程式中可能存在的各種錯誤,從而有針對性地編寫檢查這些錯誤的測試用例的黑盒測試方法
例如,測試手機終端的通話功能,可以設計各種通話失敗的情況來補充測試用 例:
無sim 卡插入時進行呼出(非緊急呼叫)
插入已欠費sim卡進行呼出
射頻器件損壞或無訊號區域插入有效sim卡撥出
網路正常,插入有效sim卡,呼出無效號碼(如1、888、333333、不輸入任何號碼等)
網路正常,插入有效sim卡,使用「快速撥號」功能呼出設定無效號碼的數字
技巧:最重要的是要思考和分析測試物件的各個方面,多參考以前發現的bug的相關資料,總結的經驗,個人多考慮異常的情況、反面的情況、特殊的輸入,以乙個攻擊者的態度對待程式,就能設計出比較完善的測試用例來。
正交表能夠在因素變化範圍內均衡抽樣,使每次試驗都具有較強的代表性,由於正交表具備均衡分散的特點,保證了全面實驗的某些要求,這些試驗往往能夠較好或更好的達到實驗的目的。正交實驗設計包括兩部分內容:第一,是怎樣安排實驗;第二,是怎樣分析實驗結果。
應用場景:在乙個介面中有多個控制項,每個控制項有多個取值,控制項之間可以相互組合,不可能(也沒有必要)為每一種組合編寫一條用例,如何使用最少最優的組合進行測試。——正交排列法
判定表,因果圖也是考慮控制項組合,但是組合數量較少(一般不會超過20中)
測試計畫測試用例
本週51testing每週一問的這個問題很精彩,於是我做了如下回答。51testing軟體測試網2k s4t m s0 誠如magic zhu所言,現在很多測試人員沒意識到測試計畫的重要性,很多時候測試計畫成為一紙空文,其根本原因在於測試計畫缺乏可執行性,也正是因為測試計畫缺乏可執行性,導致下一次寫...
測試計畫和測試用例
一 測試用例相關概念。1.測試用例定義 是為了某個業務目標,而編制的一組由測試輸入,執行條件以及預期結果組成的案例。2.測試用例優點 1.設計好測試用例,可以避免盲目測試並提高測試效率。2.實施重點突出,目的明確。3.降低工作強度 縮短專案週期。3.測試用例4大特性 1.代表性 能夠代表各種不同情況...
測試之旅 測試用例計畫綜述
ieee 829標準稱測試用例說明為 編寫用於輸入的實際數值和預期輸出結果數值。測試用例還明確指出使用具體測試用例產生的測試程式的任何限制。測試用例細節基本上應該清楚地解釋要向軟體傳送什麼值或者條件,以及預期結果。ieee 829標準還列出了其他應該包含在內的重要資訊 編寫完測試設計和測試用例文件之...