功能測試:在測試工作中佔的比例最大,功能測試也叫黑盒測試。
是把測試物件看作乙個黑盒子。利用黑盒測試法進行動態測試時,需要測試軟體產品的功能,不需測試軟體產品的內部結構和處理過程。
黑盒測試主要是為了發現以下幾類錯誤:
1、是否有不正確或遺漏的功能?
2、在介面上,輸入是否能正確的接受?能否輸出正確的結果?
3、是否有資料結構錯誤或外部資訊(例如資料檔案)訪問錯誤?
4、效能上是否能夠滿足要求?
5、是否有初始化或終止性錯誤?
採用黑盒技術設計測試用例的方法有5種:等價類劃分、邊界值分析、錯誤推測、因果圖和綜合策略。
1.等價類劃分
劃分等價類: 等價類是指某個輸入域的子集合.在該子集合中,各個輸入資料對於揭露程式中的錯誤都是等效的.並合理地假定:測試某等價類的代表值就等於對這一類其它值的測試.因此,可以把全部輸入資料合理劃分為若干等價類,在每乙個等價類中取乙個資料作為測試的輸入條件,就可以用少量代表性的測試資料.取得較好的測試結果.等價類劃分可有兩種不同的情況:有效等價類和無效等價類.
2.邊界值分析法
邊界值分析方法是對等價類劃分方法的補充。測試工作經驗告訴我,大量的錯誤是發生在輸入或輸出範圍的邊界上,而不是發生在輸入輸出範圍的內部.因此針對各種邊界情況設計測試用例,可以查出更多的錯誤.使用邊界值分析方法設計測試用例,首先應確定邊界情況.通常輸入和輸出等價類的邊界,就是應著重測試的邊界情況.應當選取正好等於,剛剛大於或剛剛小於邊界的值作為測試資料,而不是選取等價類中的典型值或任意值作為測試資料.
3.錯誤推測法
基於經驗和直覺推測程式中所有可能存在的各種錯誤, 從而有針對性的設計測試用例的方法.錯誤推測方法的基本思想: 列舉出程式中所有可能有的錯誤和容易發生錯誤的特殊情況,根據他們選擇測試用例. 例如, 在單元測試時曾列出的許多在模組中常見的錯誤. 以前產品測試中曾經發現的錯誤等, 這些就是經驗的總結. 還有, 輸入資料和輸出資料為 0 的情況.輸入**為空格或輸入**只有一行. 這些都是容易發生錯誤的情況. 可選擇這些情況下的例子作為測試用例.
4.因果圖方法
前面介紹的等價類劃分方法和邊界值分析方法,都是著重考慮輸入條件,但未考慮輸入條件之間的聯絡, 相互組合等. 考慮輸入條件之間的相互組合,可能會產生一些新的情況. 但要檢查輸入條件的組合不是一件容易的事情, 即使把所有輸入條件劃分成等價類,他們之間的組合情況也相當多. 因此必須考慮採用一種適合於描述對於多種條件的組合,相應產生多個動作的形式來考慮設計測試用例. 這就需要利用因果圖(邏輯模型). 因果圖方法最終生成的就是判定表. 它適合於檢查程式輸入條件的各種組合情況.
效能測試:是通過自動化的測試工具模擬多種正常、峰值以及異常負載條件來對系統的各項效能指標進行測試。
負載測試和壓力測試都屬於效能測試,兩者可以結合進行。通過負載測試,確定在各種工作負載下系統的效能,目標是測試當負載逐漸增加時,系統各項效能指標的變化情況。壓力測試是通過確定乙個系統的瓶頸或者不能接收的效能點,來獲得系統能
提供的最大服務級別的測試。
介面測試:介面是軟體與使用者互動的最直接的層,介面的好壞決定使用者對軟體的第一印象。
而且設計良好的介面能夠引導使用者自己完成相應的操作,起到嚮導的作用。同時介面如同人的面孔,具有吸引使用者的直接優勢。設計合理的介面能給使用者帶來輕鬆愉悅的感受和成功的感覺,相反由於介面設計的失敗,讓使用者有挫敗感,再實用強大的功能都可能在使用者的畏懼與放棄中付諸東流。
白盒測試:也稱結構測試或邏輯驅動測試。它是知道產品內部工作過程,可通過測試來檢測產品內部動作是否按照規格說明書的規定正常進行,按照程式內部的結構測試程式,檢驗程式中的每條通路是否都有能按預定要求正確工作,而不顧它的功能,白盒測試的主要方法有邏輯驅動、基路測試等,主要用於軟體驗證。「白盒」法全面了解程式內部邏輯結構、對所有邏輯路徑進行測試。「白盒」法是窮舉路徑測試。
軟體測試複習大題部分
1試著描述軟體測試的定義 軟體測試是一種用來促進鑑定軟體的正確性,完整性,安全性和質量的過程 2.什麼是軟體缺陷 計算機軟體或程式中存在的某種破壞正常執行能力的問題,錯誤,或者隱藏的功能缺陷 3.常見的黑盒測試用例的設計方法?並分別介紹一下各自的思想 1.等價類劃分法 2.邊界值分析法 3.錯誤推測...
01 複習 軟體測試基礎
一 軟體測試的定義 通過手工或者工具對被測物件進行測試操作,從而驗證實際結果和預期結果是否存在差異 二 軟體測試的作用 目的 1 通過測試工作發現並修改軟體中存在的缺陷,從而提高使用者對軟體的資訊 2 測試可以記錄軟體執行過程中產生的一些資料,從而為決策提高資料的支援 3 測試可以有效降低同類產品開...
軟體測試 基礎練習(期末複習)
軟體測試基礎 1 測試是為了驗證軟體已正確地實現了使用者的要求。錯 2 測試人員說 沒有可執行的程式,我無法進行測試工作 錯 3 在軟體開發過程中,若能推遲暴露其中的錯誤,則為修復和改進錯誤所花費的代價就會降低。錯 4 軟體測試的目的是 b a 避免軟體開發 現的錯誤 b 發現軟體開發 現的錯誤 c...