一、根據專案流程階段劃分: 單元測試、整合測試、系統測試、驗收測試
單元測試:單元測試是對軟體中的基本組成單位進行的測試。目的是檢驗軟體基本組成單位的正確性。
整合測試:整合測試是在軟體系統整合過程中所進行的測試。目的是檢查軟體單位之間的介面是否正確。
系統測試:系統測試是對已經整合好的軟體系統進行徹底的測試,以驗證軟體系統的正確性和效能等是否滿足其規約所指定的要求。
驗收測試:驗收測試是部署軟體之前的最後乙個測試操作。驗收測試的目的是確保軟體準備就緒,向軟體購買都展示該軟體系統滿足其使用者的需求。
==>單元測試階段
模組介面測試
通過所測模組的資料流進行測試。呼叫所測模組時的輸入引數與模組的形式引數的個數、屬性和順序是否匹配。
區域性資料結構測試 區域性資料結構是為了保證臨時儲存在模組內的資料在程式執行過程中完整、正確、模組的區域性資料結構往往是錯誤的根源。
路徑測試
對模組中重要的執行路徑進行測試。
錯誤處理測試
比較完善的模組設計要求能遇見出錯的條件,並設定適當的出錯處理,以便在一旦程式出錯時,能對出錯程式重做安排,保證其邏輯上的正確性。
邊界條件測試
軟體經常在便捷上失效,邊界條件測試是一項基礎測試,也是後面系統測試中的功能測試的重點。
==>整合測試階段
在整合測試中,我們主要關注以下內容:
1. 把各個模組連線起來時,穿越模組介面的資料據是否會丟失。
2. 各個了模組組合起來,能否達到預期要求的功能。
3. 乙個模組的功能是否會對另乙個模組的功能產生不利影響。
4. 全域性資料據結構是否有問題。
5. 單個模組的誤差積累起來是否會被放大,從而達到不可接受的程式。
==>系統測試階段
一般系統的主要測試工作都集中系統測試階段。根據不同的系統,所進行的測試種類也很多。
功能測試:
功能測試是對產品的各功能進行驗證,以檢查是否滿足需求的要求。
效能測試:
效能測試是通過自動化測試工具模擬多種正常、峰值以及異常負載條件來對系統的各項效能指標進行測試。
安全測試:
安全測試檢查系統對非法入侵的防範能力。
相容測試:
相容性測試主要是測試系統在不同的軟硬體環境下是否能夠正常的執行。
==>驗收測試階段:
功能確認測試
安全可靠性測試
易用性測試
可擴充性測試
相容性測試
資源佔用率測試
使用者文件資料驗收
二、根據**的可見程度劃分: 白盒測試、黑盒測試、灰盒測試
上面是根據專案流程按照測試的各個階段對測試工具的劃分。白盒測試與黑盒測試,主要是測試工作對軟體**的的可見程度的劃分。這也是我軟體測試中領域中最基本的兩個概念。
==>黑盒測試:
黑盒測試,指的是把被測的軟體看作是乙個黑盒子,我們不去關心盒子裡面的結構是什麼樣子的,只關心軟體的輸入資料和輸出結果
它只檢查程式功能是否按照需求規格說明書的規定正常使用,程式是否能適當地接收輸入資料而產生正確的輸出資訊。黑盒測試著眼於程式外部結構,不考慮內部邏輯結構,主要針對軟體介面和軟體功能進行測試。
==>白盒測試:
白盒測試,指的是把盒子蓋子開啟,去研究裡面的源**和程式結果。
它是按照程式內部的結構測試程式,通過測試來檢測產品內部動作是否按照設計規格說明書的規定正常進行,檢驗程式中的每條通路是否都能按預定要求正確工作
==>灰盒測試:
灰盒測試介於黑盒測試與白盒測試之間。
可以這樣理解,灰盒測試關注輸出對於輸入的正確性,同時也關注內部表現,但這種關注不象白盒那樣詳細、完整,只是通過一些表徵性的現象、事件、標誌來判斷內部的執行狀態,有時候輸出是正確的,但內部其實已經錯誤了,這種情況非常多,如果每次都通過白盒測試來操作,效率會很低,因此需要採取這樣的一種灰盒的方法。
功能測試、效能測試
==>功能測試
功能測試檢查實際的功能是否符合使用者的需求。測試的大部分工作也是圍繞軟體的功能進行,設計軟體的目的也就是滿足客戶對其功能的需求。如果偏離的這個目的任何測試工作都是沒有意義的。
功能測試又可可以細分為很多種:邏輯功能測試、介面測試、易用性測試、安裝測試、相容性測試等。
==>效能測試
效能測試是通過自動化的測試工具模擬多種正常、峰值以及異常負載條件來對系統的各項效能指標進行測試。
軟體的效能包括很多方面,主要有時間效能和空間效能兩種。
時間效能:主要是指軟體的乙個具體的響應時間。比如乙個登入所需要的時間,乙個交易所需要的時間等。當然,拋開具體的測試環境,來分析一次事務的響應時間是沒有任何意義的。需要搭建乙個具體且獨立的測試環境。
空間效能:主要指軟體執行時所消耗的系統資源,比如硬體資源,cpu、記憶體,網路頻寬消耗等。
手工測試與自動化測試冒煙測試、回歸測試、隨機測試、探索性測試、安全測試
這三種測試在軟體功能測試過程中,既不算具體明確的測試階段也不算是具體的測試方法。
==>冒煙測試:
是指在對乙個新版本進行系統大規模的測試之前,先驗證一下軟體的基本功能是否實現,是否具備可測性。
引入到軟體測試中,就是指測試小組在正規測試乙個新版本之前,先投入較少的人力和時間驗證乙個軟體 的主要功能,如果主要功能都沒有實現,則打回開發組重新開發。這樣做的好處是可以節省大量的時間成本和人力成本。
==>回歸測試:
回歸測試是指修改了舊**後,重新時行測試以確認修改後沒有引入新的錯誤或導致其他**產生錯誤。
回歸測試一般是在進行軟體的第二輪測試開始的,驗證第一輪中發現的問題是否得到修復。當然,回歸也是乙個迴圈的過程,如果回歸的問題通不過,則需要開發人員修改後再次進行回歸,直到通過為止。
==>隨機測試:
是指測試中的所有輸入資料都是隨機生成的,其目的是模擬使用者的真實操作,並發現一些邊緣性的錯誤。
隨機測試可以發現一些隱蔽的錯誤,但是也有很多缺點,比如測試不系統,無法統計**覆蓋率和需求覆蓋率,發現的問題難以重現。一般是放在測試的最後執行。其實隨機測試更專業的公升級版叫 探索性測試
==>探索性測試
探索性測試可以說是一種測試思維技術。它沒有很多實際的測試方法、技術和工具,但是卻是所有測試人員都應該掌握的一種測試思維方式。探索性強調測試人員的主觀能動性,拋棄繁雜的測試計畫和測試用例設計過程,強調在碰到問題時及時改變測試策略。
探索性測試應該是未來測試領域的乙個方向。
==>安全測試
安全測試是在it軟體產品的生命週期中,特別是產品開發基本完成到發布階段,對產品進行檢驗以驗證產品符合安全需求定義和產品質量標準的過程。
安全測試也在越來越受到企業的關注和重視,因為由於安全性問題造成的後果是不可估量的。尤其對於網際網路產品最容易遭受各種安全攻擊。
測試的分類
1.按開發階段分 2.按測試實施組織分 3.按測試執行方式分 4.按是否檢視 分 5.按是否手工執行 6.按測試物件劃分 7.按測試地域劃分單元測試 測 概念 單元測試是對軟體組成單元進行測試 目的 檢驗軟體基本組成單位的正確性 測試物件 最小模組 測試人員 白盒測試工程師或開發工程師 測試方法 白...
測試的分類
預期結果和實際結果做對比 軟體測試的分類 分為 方法 方向 階段 物件 狀態 其他 方法 黑盒測試 白盒測試 灰盒測試 方向 功能測試 效能測試 安全測試 功能測試 效能測試 軟體的響應時間 測試在不同的情況下,軟體的響應時間 情況分為 假設軟體最慢的響應時間是10s,需要多少人一起使用軟體才會造成...
測試的分類
1 按階段劃分 單元測試 單元測試是一項由開發人員或者測試人員來對程式模組的正確性進行檢驗測試的工作,用於檢查被測試 的功能是否正確。單元測試是一種在早期抓住 bug 的有效途徑。一般由開發自測 整合測試 也叫組裝測試或聯合測試。在單元測試的基礎上,將所有模組按照設計要求組裝成為子系統或系統,進行整...