注:内容均来自书籍及网络,侵删。(如因理解不当产生错误,欢迎批评指正)
一、软件测试分类
1、按服务类型,有两种分类方式:(1)B/S、C/S;(2)手机端测试/PC端测试
2、按测试内容:功能测试,负载测试,压力测试,性能测试,大数据测试,易用性测试,安装测试,恢复测试,安全性测试,兼容性测试,内存泄漏测试,竞品测试,可靠性测试,文档测试
3、按测试方法:白盒测试,黑盒测试,探索性测试
4、按程序运行阶段:静态测试,动态测试
5、按软件阶段:单元测试->集成测试->系统测试->验收测试->回归测试->Alpha测试->Beta测试
二、性能测试
从上面可以看到,性能测试在整个软件测试环节占了50%的内容,如14个测试内容中,性能测试就占了8个:负载测试,压力测试,性能测试,大数据测试,恢复测试,内存泄漏测试,竞品测试(比较测试),可靠性测试。
性能测试流程大致如下:
1、业务学习:查看文档、手工操作系统->了解系统功能。
2、需求分析:分析系统非功能需求,圈定测试范围,了解系统性能指标。
3、设计模型:圈定性能测试范围后,把业务模型映射成测试模型。
4、计划编写:明确测试范围、人力投入、持续时间、工作内容、风险评估、风险应对策略等。
5、脚本开发:录制或编写性能测试脚本,开发测试挡板程序/测试程序等。
6、测试环境准备:性能测试环境准备包括服务器、负载机两部分,服务器指被测系统的运行平台,负载机指用来产生负载的机器,用来安装负载工具,运行测试脚本。
7、性能调优:性能测试工程师与开发人员一起解决性能问题。
性能测试主要交付件:测试计划/脚本/程序,测试报告或者阶段性测试报告。
三、关注点
判断是否通过测试的关注点有:相应时间(RT)、吞吐量(TPS)、事物成功率、硬件指标(CPU、内存、存储、网络)、稳定性、内存有无泄漏、其他(数据库、中间件、缓存、JVM)
四、常见性能测试工具
常见的性能测试工具有:LoadRunner、Apache Jmeter(开源)、Grinder(开源)、QALoad、WAS、WebLoad、RPT、OPENSTA等。