常见的软件测试内容及使用工具
一、单元测试与集成测试
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、界面测试
四、安装测试