黑盒測試:不基于內部設計和代碼的任何知識,而是基于需求和功能性。
白盒測試:基于一個(gè)應用代碼的內部邏輯知識,測試是基于覆蓋全部代碼、分支、路徑、條件。
單元測試:最微小規模的測試;以測試某個(gè)功能或代碼塊。典型地由程序員而非測試員來(lái)做,因為它需要知道內部程序設計和編碼的細節知識。這個(gè)工作不容易作好,除非應用系統有一個(gè)設計很好的體系結構; 還可能需要開(kāi)發(fā)測試驅動(dòng)器模塊或測試套具。
累積綜合測試:當一個(gè)新功能增加后,對應用系統所做的連續測試。它要求應用系統的不同形態(tài)的功能能夠足夠獨立以可以在全部系統完成前能分別工作,或當需要時(shí)那些測試驅動(dòng)器已被開(kāi)發(fā)出來(lái); 這種測試可由程序員或測試員來(lái)做。
集成測試:一個(gè)應用系統的各個(gè)部件的聯(lián)合測試,以決定他們能否在一起共同工作。部件可以是代碼塊、獨立的應用、網(wǎng)絡(luò )上的客戶(hù)端或服務(wù)器端程序。這種類(lèi)型的測試尤其與客戶(hù)服務(wù)器和分布式系統有關(guān)。
功能測試:用于測試應用系統的功能需求的黑盒測試方法。這類(lèi)測試應由測試員做,這并不意味著(zhù)程序員在發(fā)布前不必檢查他們的代碼能否工作(自然他能用于測試的各個(gè)階段)。
系統測試:基于系統整體需求說(shuō)明書(shū)的黑盒類(lèi)測試;應覆蓋系統所有聯(lián)合的部件。
端到端測試:類(lèi)似于系統測試;測試級的“宏大”的端點(diǎn);涉及整個(gè)應用系統環(huán)境在一個(gè)現實(shí)世界使用時(shí)的模擬情形的所有測試。例如與數據庫對話(huà),用網(wǎng)絡(luò )通訊,或與外部硬件、應用系統或適當的系統對話(huà)。
健全測試:典型地是指一個(gè)初始化的測試工作,以決定一個(gè)新的軟件版本測試是否足以執行下一步大的測試努力。例如,如果一個(gè)新版軟件每5分鐘與系統沖突,使系統陷于泥潭,說(shuō)明該軟件不夠“健全”,目前不具備進(jìn)一步測試的條件。
衰竭測試:軟件或環(huán)境的修復或更正后的“再測試”??赡芎茈y確定需要多少遍再次測試。尤其在接近開(kāi)發(fā)周期結束時(shí)。自動(dòng)測試工具對這類(lèi)測試尤其有用。
接受測試:基于客戶(hù)或最終用戶(hù)的規格書(shū)的最終測試,或基于用戶(hù)一段時(shí)間的使用后,看軟件是否滿(mǎn)足客戶(hù)要求。
負載測試:測試一個(gè)應用在重負荷下的表現,例如測試一個(gè) Web 站點(diǎn)在大量的負荷下,何時(shí)系統的響應會(huì )退化或失敗。
強迫測試:在交替進(jìn)行負荷和性能測試時(shí)常用的術(shù)語(yǔ)。也用于描述象在異乎尋常的重載下的系統功能測試之類(lèi)的測試,如某個(gè)動(dòng)作或輸入大量的重復,大量數據的輸入,對一個(gè)數據庫系統大量的復雜查詢(xún)等。
性能測試:在交替進(jìn)行負荷和強迫測試時(shí)常用的術(shù)語(yǔ)。理想的“性能測試”(和其他類(lèi)型的測試)應在需求文檔或質(zhì)量保證、測試計劃中定義。
可用性測試:對“用戶(hù)友好性”的測試。顯然這是主觀(guān)的,且將取決于目標最終用戶(hù)或客戶(hù)。用戶(hù)面談、調查、用戶(hù)對話(huà)的錄象和其他一些技術(shù)都可使用。程序員和測試員通常都不宜作可用性測試員。
安裝/卸載測試:對軟件的全部、部分或升級安裝/卸載處理過(guò)程的測試。
恢復測試:測試一個(gè)系統從如下災難中能否很好地恢復,如遇到系統崩潰、硬件損壞或其他災難性問(wèn)題。
安全測試:測試系統在防止非授權的內部或外部用戶(hù)的訪(fǎng)問(wèn)或故意破壞等情況時(shí)怎么樣。這可能需要復雜的測試技術(shù)。
兼容測試:測試軟件在一個(gè)特定的硬件/軟件/操作系統/網(wǎng)絡(luò )等環(huán)境下的性能如何。
比較測試:與競爭伙伴的產(chǎn)品的比較測試,如軟件的弱點(diǎn)、優(yōu)點(diǎn)或實(shí)力。
Alpha 測試:在系統開(kāi)發(fā)接近完成時(shí)對應用系統的測試;測試后,仍然會(huì )有少量的設計變更。這種測試一般由最終用戶(hù)或其他人員員完成,不能由程序員或測試員完成。
Beta 測試:當開(kāi)發(fā)和測試根本完成時(shí)所做的測試,而最終的錯誤和問(wèn)題需要在最終發(fā)行前找到。這種測試一般由最終用戶(hù)或其他人員員完成,不能由程序員或測試員完成。
原文轉自:http://www.uml.org.cn/Test/test21.htm