针对不同的软件,系统测试的策略各不相同,例如:金融方面的软件安全性放在首位。
1.功能测试:(最基础的)
检测软件对象是否存在一下错误:
1.是否有不正确,遗漏,或者多余的功能
2.是否满足了用户需求和隐藏需求
3.对输入有无正确的响应,输出做出正确的显示
4.对系统的流程设计是否正确合理
5.所有的路径是否达到了覆盖
注意点:
1.从用户角度出发,考虑什么情况下使用什么功能
2.考虑用户多个功能组合运用时前后台的交互
3.对WEB端,多用户使用,是否会让功能失效
2.性能测试:
主要检测性能是否满足特定的性能需求。
常用指标:
并发数,响应时间,每秒处理的事务数,吞吐量,点击率,访问量以及硬件资源
考虑方面:
1.是否与性能需求完全一致
2.检验实现的具体性能到底是怎么样的。
3.压力测试
主要检测被测系统的性能,可靠性,稳定性等
目的:检查系统的性能,可靠性,稳定性等
基本步骤:
1.进行简单的多任务测试
2.在简单压力测试被修正后,增添系统的压力直到系统中断
3.在每个版本循环中,重复进行压力测试。
4.容量测试
容量测试是面向数据的;
目的:显示系统可以处理目标内确定的数据容量。
步骤:
1.首先分析系统的外部数据源,并对数据进行分类
2.对每类数据源分析可能的容量限制,对数据类型分析记录的长度和数量限制。
3.对每类数据源构造大容量数据对系统进行测试
4.对分析结果与期望值比较,最后确定系统的容量瓶颈。
5.对系统进行优化并重复上面的步骤,直到系统达到期望的容量处理能力。
5.安全性测试
常用方法:
1.静态代码检验主要验证功能的安全隐患
2.可以借助安全测试工具APPScan进行漏洞扫描
3.模拟攻击来验证软件系统的安全防护能力
4.利用Wireshark工具对网络数据包进行截取分析。
6.兼容性测试
策略:向上兼容,向下兼容,交叉兼容
考虑以下几点:
1.软件本身能否向前或向后兼容,(不同版本间的兼容)
2.能否与其他相关软件兼容
3.不同操作系统间的兼容
4.数据的兼容(数据共享)
5.硬件兼容(app考虑手机品牌,型号等)
7.GUI测试
8.可靠性测试
可靠性是软件质量中的一个重要标志
9.配置测试
需要和其他测试结合:功能测试,性能测试,兼容性测试,GUI测试等
1.服务端:硬件,web服务器,数据库服务器等
2.客户端:考虑操作系统,浏览器,分辨率,颜色质量
10.异常测试
方法:
1.强行关闭软件的数据库服务器或者其他方式导致数据库死机
2.非法删除数据库中的表数据,表等
3.非法断开网络或则认为增加网络流量
4.强行重启web服务器或者中间件服务器,测试软件的恢复能力
5.人为的增加cpu,内存,硬盘等负载
6.对部分软件测试机器进行断电测试
11.安装测试
安装中:安装流程是否合理,检查安装文件,注册表,数据库的变化
安装后:是否正常运行,基本功能能否实现
卸载测试:能否恢复到安装前的状态
升级测试:升级对已有数据的影响
12.网络测试(主要测试的是协议测试)
关注点:
1.功能实现方面:协议,软件内部的网络循环数与架构
2.性能方面:吞吐率和I/O占用率
3.安全方面:传输加密(MD5,RSA)
4.网络技术方面:数据收集分析,监控工具(Wireshark)
13.可用性测试
14.健壮性测试
15.文档测试