作者:非妃是公主
专栏:《软件测试》
个性签:顺境不惰,逆境不馁,以心制境,万事可成。——曾国藩
文章目录
- 性能测试
- 压力测试
- 容量测试
- 健壮性测试
- 安全性测试
- 可靠性测试
- 恢复性测试
- 协议一致性测试
- 兼容性测试
- 安装测试
- 可用性测试
- 配置测试
- 文档测试
- GUI测试
性能测试
- 性能测试:检验软件是否达到需求规格说明书中规定的各类性能指标,并满足一些性能相关的约束和限制条件。
- 评估系统的能力:负荷、响应时间
- 识别系统中的弱点:瓶颈
- 系统调优:改进性能
压力测试
- 在保证系统不崩溃的前提下,用于评价系统超过所描述的需求或资源限制时的情况。
- 测试人员可以故意制造过载情况、模拟资源问题等,然后观察被测软件的行为。
- 期望:性能可以下降,但不应崩溃。
- 设计测试用例
- 检验系统的能力在参数、条件等异常的情况下
最高所能达到的限度 - 一般取比平常限度高5~10倍的限度
- 例如:100个用户并发—〉500个用户
- 检验系统的能力在参数、条件等异常的情况下
容量测试
- 容量:可以看作系统性能指标中一个特定环境下的一个特定性能指标,即设定的界限或极限值。
- 找到系统的饱和点
健壮性测试
系统是否可以从错误(不合理输入等导致)中恢复,而不是直接崩溃或中断运行。
安全性测试
检查软件规格说明书中规定的安全要求是否满足。主要包括以下方面:
- 功能验证:用户管理、权限管理
- SQL注入测试:把SQL语句注入到web表单中,观测服是否会欺骗服务器执行恶意SQL语句。
- 漏洞扫描:通过漏洞扫描器(一种可以用来扫描软件漏洞的程序)来检测主机和网络是否存在安全性问题。
- 模拟攻击:采用冒充、重演、消息篡改、服务拒绝等方式来模拟程序可能遇到的攻击。
- 侦听技术:截取网络传输数据包,并进行解译
常见安全性测试场景有:应用程序、操作系统、数据库、网络环境。
可靠性测试
测试软件在一定时间内是否可以正常运行。真实环境、集中压力、随机破坏等环境。
恢复性测试
首先破坏系统(运行过程中断电、加电),然后观测系统是否可以快速回复,数据、检查点、重启、备份机制等是否正常。
协议一致性测试
验证软件是否满足一定的国际协议标准,以黑盒测试方式进行,通常由外部组织进行。
兼容性测试
软件在不同硬件、不同操作系统,不同网络环境下,是否可以正常运行。
安装测试
安装是否正常(升级是否正常、磁盘容量不足下是否正常等),安装后是否可以正常卸载,卸载后是否有残留、注册表修改等。
可用性测试
更注重用户体验,注重软件设计过程中“人”的要素。测试人员会涉及一系列用户的使用场景,在该场景下,进行测试。
包含以下内容:
- 操作成功率
- 执行效率
- 用户使用前评价
- 用户使用后评价
- 用户满意度等
配置测试
验证软件在不同的软硬件、网络配置下是否正常工作。
文档测试
主要包括用户文档测试(严格按照文档操作,是否可以正确使用软件)和开发文档测试(软件需求规格说明书、数据库设计、概要设计、详细设计等是否清晰完善、可维护性、实用性、技术清晰度)
GUI测试
主要包括人机交互界面布局、输入输出格式、操作流程、页面跳转、输入法输入输出是否正常。由手工、自动化两种方式。