一、單元測試與集成測試
1、單元測試(基本是程序員的編碼時就進行了單元測試)
一個對象或是一個類,也可能是一個函數也可以是一個組件或模塊。
在單元測試或集成測試中主要采用白盒測試方法,包括對代碼的評審、靜態分析和結合測試工具進行動態測試。
單元測試的任務:單元獨立執行路徑的測試、單元局部數據結構的測試、單元接口測試、單元邊界條件測試、單元容錯性測試內存分析。
單元測試工具:
針對單元測試一般根據不同的編程語言和不同的開發環境
針對C/C++的單元測試工具:Cppunit,Parasoft C++ Test等
針對Java語言的單元測試工具:Parasoft Jtest,Junit等
.NET:NUnit
HTML:HtmlUnit
JavaScript:JsUnit
PHP:PhpUnit
分為靜態測試工具和動態測試工具
支持Java語言檢測:CheckStyle、FindBugs、PMD等
支持C++語言:Parasoft C++Test
按功能特點進行分類
內存資源泄露檢查工具:Numega中的BounChecker,Rational的Purity等
代碼覆蓋率檢查工具:Numega中的TrueCoverge,Rational的PureCoverge等
代碼復雜度檢測工具:SourceMonitor
2、集成測試
集成測試是將已分別通過測試的單元按設計要求集成起來再進行測試,以檢查這些單元之間的接口是否存在問題。
二、系統測試
1、系統功能測試:是否正確的實現了其功能;其衡量標准是實現產品規格說明書上所要求的功能。
1.1 主要歸為界面、數據、操作、邏輯、接口等方面。 或者根據測試的對象還可分為web測試、客戶端測試、手機測試、手機應用測試、手機web測試等。
1.2 工具:(1)web功能測試工具:Selenium、WatiJ、WatiN、WariR、Canoo WebTest(開源);Parasoft WebKing、SOATest、Compuware WebCheck等(商業);(2)Windows客戶端程序測試工具:AutoIT、Twist、AutoHotKey、Abbot、Squish、STAF等(開源);HP Unified Functional Testing、IBM Rational Function Tester、Compuware Test Partner、Segue SilkTest、AdventNet QEngine、Oracle Empirix Test Suite等;(3)嵌入式測試工具:CodeTest、Testbed、RTInsightPro、IBM Rational Teat RealTimeVcTester等。
2、性能測試:為了發現系統性能問題或獲取系統性能相關指標(如運行時間、響應時間、資源使用率等)而進行的測試。
工具:
JMeter:Web服務器的性能測,數據庫,FTP,LDAP服務器等;
nGrinder;
Apache提供的一個簡單的命令行性能測試工具ab;
HTTP工程包含一個名為HTTPD-Test;
Siege:一個開源的web壓力測試工具;
OpenSTA:可模擬大量的虛擬用戶來完成性能測試;
DBMonster:一個生成隨機數據、用來測試SQL數據庫的壓力測試工具;
LoadSim:網絡應用程序的負載模擬器;
JProfiler:應用服務器性能測試;
3、壓力測試(強度測試、負載測試):模擬實際應用的軟硬件環境及用戶使用過程的系統負荷,長時間或超大負荷地運行測試軟件,來測試被測系統的性能、可靠性、穩定性等。
4、容量測試:預先分析出反映軟件系統應用特征的某項指標的極限值
5、接口測試:接口測試包括內部接口測試和外部接口測試,內部接口測試一般在集成測試中進行,通過模塊之間的聯調發現內部接口的問題。外部接口測試一般在系統測試中進行,檢查軟件產品與其它應用系統的接口是否正常。比如:檢查軟件產品接口與銀行計費接口是否聯接正常、功能能否實現等。
6、安全測試:全面檢驗軟件在需求規格說明中規定的防止危險狀態措施的有效性和在每一個危險狀態下的反應。
分類:
安全功能測試:包括數據機密性、完整性、可用性、不可否認性、身份認證、授權、訪問控制、審計跟蹤、委托、隱私保護、安全管理等。
安全漏洞測試:安全漏洞是指系統在設計、實現、操作、管理上存在的可被利用的缺陷或缺點。
工具:
通用漏洞檢測/滲透測試工具:以Metaspoit、Nessus為代表,包括CoreImpact、Immunnity、CANVAS、X-Scan、WebRavor、Aurora 600等
Web應用/網站專業掃描工具:w3af、Paros proxy、Burp Suite、Websense Web Security Suite、Acunetix Web Vulnerability Scanner、HP WebInspert等
注入漏洞檢測工具:Pangolin
數據庫漏洞掃描工具:App Detective
密碼/網絡破解工具:John The Ripper、Cain&Abel、Hydra等
網絡掃描工具:Nmap、Netcat、SuperScan、Snort等
嗅探工具:Wireshark、Ettercap、Dsniff等
無線測試工具:Aircrack-ng、Kismet、wifiScanner等
7、易用性測試
8.兼容性測試
0、配置測試
10、容錯性測試
11、回歸測試
三、驗收測試
1、文檔測試
2、界面測試
四、安裝測試