1、現(xiàn)代軟件測試的定義
測試不單純是發(fā)現(xiàn)錯誤的過程桐愉,而且將測試作為軟件質量保證的主要職能,包含軟件質量評價的內容。行業(yè)標準給軟件測試下的定義是:“使用人工或者手動的手段來運行或測定某個軟件系統(tǒng)的過程厢呵,其目的在于檢驗它是否滿足規(guī)定的需求或弄清預期結果與實際結果的差別”。
2科阎、軟件測試的目的
① 發(fā)現(xiàn)缺陷述吸、提高質量(正面、反面測試)
②驗證是否滿足需求(功能锣笨、性能蝌矛、可靠性需求)
③建立軟件質量的信心(正、反面測試是否充分)
【反面測試】:通過非法操作執(zhí)行軟件檢驗是否有錯
3错英、軟件缺陷的定義
① 軟件錯誤或者軟件缺陷是軟件產(chǎn)品的固有成分入撒,是軟件“與生俱來”的特征
②軟件缺陷引發(fā)軟件故障和軟件失效
③軟件缺陷包括檢測缺陷和殘留缺陷。檢測缺陷是指在用戶使用之前被檢測出的缺陷椭岩;殘留缺陷是指軟件發(fā)布后存在的缺陷茅逮,包括在用戶安裝前未被檢測出的缺陷以及檢測出但未被修復的缺陷。
4判哥、什么是軟件缺陷
① 軟件未實現(xiàn)產(chǎn)品說明書要求的功能献雅。
②軟件出現(xiàn)了產(chǎn)品說明書指明不應該出現(xiàn)的錯誤。
③軟件實現(xiàn)了產(chǎn)品說明書未提到的功能
④軟件未實現(xiàn)產(chǎn)品說明書雖未明確提及但應該實現(xiàn)的目標
⑤軟件難以理解塌计、不易使用挺身、運行緩慢或者從測試員的角度來看,最終用戶認為不好锌仅。
5章钾、產(chǎn)生缺陷的原因
大多數(shù)軟件缺陷并不是由編碼造成的墙贱,導致大多數(shù)軟件缺陷產(chǎn)生的最主要階段是需求分析階段,其次是在軟件設計階段贱傀。
① 需求的不完善定義
②客戶-開發(fā)者通信失敗
③對軟件需求的故意偏離
④邏輯設計錯誤
⑤編碼錯誤
⑥不符合文檔編制與編碼規(guī)定
⑦測試過程不足
⑧規(guī)程錯誤
⑨文檔編制錯誤
6惨撇、軟件缺陷的描述
缺陷ID、缺陷基本信息(包括缺陷標題府寒,缺陷嚴重程度魁衙、缺陷提交人、提交時間株搔、所屬模塊纺棺、指定解決人、制定解決時間邪狞、最終處理人祷蝌、缺陷處理結果描述、處理時間帆卓、缺陷驗證人巨朦、缺陷驗證結果描述、缺陷驗證時間)剑令、缺陷的詳細描述糊啡、測試環(huán)境說明、必要的附件吁津。
7棚蓄、軟件測試的原則
軟件測試應盡早執(zhí)行
8、黑盒測試設計測試用例的方法
一般采用等價類劃分碍脏、因果圖法梭依、邊界值分析、用戶界面測試等方法適用功能測試和驗收測試
①等價類劃分典尾。把程序的輸入域劃分成若干部分役拴。然后從每個部分選取少數(shù)有代表性的數(shù)據(jù)當做測試用例。等價類的劃分分為有效等價類和無效等價類
例如:在程序的規(guī)格說明中钾埂,輸入條件有一個規(guī)定:“輸入數(shù)值的范圍是1-999”
有效的等價類是1<=輸入值<=999河闰,兩個無效等價類是“輸入值<1”和“輸入值>999”
練習:輸入有效的月份。
②邊界值分析褥紫。
例如:輸入值范圍是1-9姜性,則可選取1、9髓考、0.9部念、9.1作為測試數(shù)據(jù)
練習:輸入有效的月份
③隨機測試
④猜錯法。依靠測試人員的經(jīng)驗和直覺,從各種可能的測試方案中選出一些最有可能引起程序出錯的方案印机。基本思想是:列舉出程序中所有有可能有錯誤和容易發(fā)生錯誤的特殊情況门驾,根據(jù)他們選擇測試用例射赛。
⑤探索性測試。強調測試人員的主觀能動性奶是,拋棄繁重的測試計劃和測試用例設計過程楣责,強調在遇到問題時改變測試策略。