文/amy
按系統(tǒng)內部結構劃分
(1)白盒測試:又稱為結構測試或邏輯驅動測試魂那,是一種按照程序內部邏輯結構和編碼結構甸箱,設計測試數據并完成測試的一種測試方法喉磁。
(2)黑盒測試:又稱為數據驅動測試嘀趟,把測試對象當做看不見的黑盒胆数,在完全不考慮程序內部結構和處理過程的情況下解幼,測試者僅依據程序功能的需求規(guī)范考慮控乾,確定測試用例和推斷測試結果的正確性遂蛀,它是站在使用軟件或程序的角度,從輸入數據與輸出數據的對應關系出發(fā)進行的測試秦叛。
(3)灰盒測試:是一種綜合測試法晦溪,它將“黑盒”測試與“白盒”測試結合在一起,是基于程序運行時的外部表現又結合內部邏輯結構來設計用例挣跋,執(zhí)行程序并采集路徑執(zhí)行信息和外部用戶接口結果的測試技術。
按是否執(zhí)行代碼劃分
(1)靜態(tài)測試:指不運行被測程序本身狞换,僅通過分析或檢查源程序的語法避咆、結構、過程修噪、接口等來檢查程序的正確性查库。
(2)動態(tài)測試:是指通過運行被測程序,檢查運行結果與預期結果的差異黄琼,并分析運行效率樊销、正確性和健壯性等性能指標。
按開發(fā)過程級別劃分
(1)單元測試:又稱模塊測試,是針對軟件設計的最小單位----程序模塊或功能模塊围苫,進行正確性檢驗的測試工作裤园。其目的在于檢驗程序各模塊是否存在各種差錯,是否能正確地實現了其功能剂府,滿足其性能和接口要求拧揽。(單元測試主要采用 白盒測試方法)
(2)集成測試:又叫組裝測試或聯(lián)合,是單元測試的多級擴展腺占,是在單元測試的基礎上進行的一種有序測試淤袜。旨在檢驗
軟件單元之間的接口關系,以期望通過測試發(fā)現各軟件單元接口之間存在的問題衰伯,最終把經過測試的單元組成符合設計要求的軟件铡羡。(集成測試主要采用 灰盒測試方法)
(3)系統(tǒng)測試:是為判斷系統(tǒng)是否符合要求而對集成的軟、硬件系統(tǒng)進行的測試活動意鲸、它是將已經集成好的軟件系統(tǒng)烦周,作為基于整個計算機系統(tǒng)的一個元素,與計算機硬件临扮、外設论矾、某些支持軟件、人員杆勇、數據等其他系統(tǒng)元素結合在一起贪壳,在實際運行環(huán)境下,對計算機系統(tǒng)進行一系列的組裝測試和確認測試蚜退。(系統(tǒng)測試主要采用 黑盒測試方法)
按執(zhí)行過程是否需要人工干預劃分
(1)手工測試:就是測試人員按照事先為覆蓋被測軟件需求而編寫的測試用例闰靴,根據測試大綱中所描述的測試步驟和方法,手工地一個一個地輸 入執(zhí)行钻注,包括與被測軟件進行交互(如輸入測試數據蚂且、記錄測試結果等),然后觀察測試結果幅恋,看被測程序是否存在問題杏死,或在執(zhí)行過程中是否會有一場發(fā)生,屬于比較原始但是必須執(zhí)行的一個步驟捆交。
(2)自動化測試:實際上是將大量的重復性的測試工作交給計算機去完成淑翼,通常是使用自動化測試工具來模擬手動測試步驟,執(zhí)行用某種程序設計語言編寫的過程(全自動測試就是指在自動測試過程中品追,不需要人工干預玄括,由程序自動完成測試的全過程;半自動測試就是指在自動測試過程中肉瓦,需要手動輸入測試用例或選擇測試路徑遭京,再由自動測試程序按照人工指定的要求完成自動測試)
按測試實施方劃分
(1)開發(fā)測試:開發(fā)人員進行的測試
(2)用戶測試:用戶方進行的測試
(3)第三方測試:有別于開發(fā)人員或用戶進行的測試胃惜,由專業(yè)的第三方承擔的測試,目的是為了保證測試工作的客觀性
按測試所處的環(huán)境劃分
(1)alpha測試:是由一個用戶在開發(fā)環(huán)境下進行的測試哪雕,也可以是公司內部的用戶在模擬實際操作環(huán)境下進行的測試
(2)BETA測試:是用戶公司組織各方面的典型終端用戶在日常工作中實際使用貝塔版本船殉,并要求用戶報告異常情況,提出批評意見
?兩者區(qū)別:
1. 測試的場所不同热监,Alpha測試是指把用戶請到開發(fā)方的場所來測試捺弦,beta測試是指在一個或多個用戶的場所進行的測試。
2. alpha測試先于beta測試執(zhí)行孝扛。通用的軟件產品需要較大規(guī)模的beta測試列吼,測試周期比較長。如果產品通過了beta測試苦始,那么就可以正式發(fā)布寞钥。