性能测试的目的:发现性能瓶颈
性能测试的分类
概念:
性能测试是个非常广泛的概念,包括的很多方面的测试,也可称为只为非功能测试。
自动化测试属于功能测试的范围,由于其测试方法要求测试人员拥有一定的代码能力,所以被单独分成一个测试模块。
具体分类(测试范围)
负载测试:通过逐步加压的方法,达到既定的性能阈值的目标,阈值的设定应是小于等于某个值,如CPU使用率小于等于80%
压力测试:通过逐步加压的方法,使得系统的某些资源达到饱和,甚至失效的状态,剑胆粗暴的解释就是什么条件能把系统压崩溃。
并发测试:在同一时间内,多个虚拟用户同时访问同一模块、同一功能,通常的测试方法是设置集合点。
容量测试:通常是指数据库层面的,目标是获取数据库的最佳容量的能力。又称为容量预估。具体测试方法为在一定的并发用户,不同的基础数据量下,观察数据库的处理能力,即获取数据库的各项性能指标。(一般是做完前面两个再做这个)
可靠性测试:又称为稳定性测试或者疲劳测试。是指系统在高压情况下,长时间的运行系统是否稳定。如CPU使用率在80%以上,7*24小时运行,系统是否稳定。
异常测试:又称为失败测试。是指系统架构方面的测试。如在负载均衡架构中,要测试lei机,节点挂掉的情况系统的反映。
性能测试的工作流程
1、需求分析
2、性能指标制定(吞吐量,QPS等等)
3、脚本开发(或者工具)
4、场景设置
5、监控部署
6、测试执行
7、性能分析
8、性能调优
9、测试报告
图示如下:

常见系统应用分层架构:
显示层(View)——web、Android、IOS、H5
逻辑控制层(controller)——Api
数据存储层(model)——mysql(支持事务)、mongodb(不支持事务)、redis(存放在内存中)...

网友评论