性能测试用例的设计,有别于功能测试用例的设计,毕竟,考虑的点不一样。
在有了性能测试方案后,我们就可以设计我们的性能测试用例了,一般考虑:单场景、混合场景、稳定性场景
下面给出笔者在实际工作中,单场景的用例(之前用loadrunner做压测的用例),供大家参考:
用例编号:PT001
场景描述:模拟用户进行登录操作
并发量:分别模拟并发用户数为1000、1500、2000等多种情况进行测试(除了压测能否达到目标,还要压测出最大的并发和tps,参考:https://www.cnblogs.com/uncleyong/p/11543488.html)
压测时间:每次600s
数据量:oracle数据库user表有100万存量账户
脚本设置关键点:参数化用户名、封装登录事务、添加思考时间
集合点:不使用
加压减压方式:全部初始化爬坡加压、全部退出
场景运行时设置:think time=1s、continue when error、log选择Send messages only when an error occurs
重点关注指标:响应时间、tps,事务成功率,各个服务器资源使用情况(CPU、内存、磁盘I/O、磁盘容量)、网络、是否频繁fgc、是否线程阻塞、线程死锁、连接池未释放、数据库死锁、慢sql等等
预期指标:并发>=1000,响应时间<=1s,tps>=600,事务成功率为99.5%(涉及资金的,要求100%),应用服务器、数据库服务器CPU和内存使用率<=90%,没有内存泄漏现象、没有死锁等各种性能问题。
用例编号:PT001 场景描述:模拟用户进行登录操作 并发量:分别模拟并发用户数为1000、1500、2000等多种情况进行测试(除了压测能否达到目标,还要压测出最大的并发和tps,参考:https://www.cnblogs.com/uncleyong/p/11543488.html) 压测时间:每次600s 数据量:oracle数据库user表有100万存量账户 脚本设置关键点:参数化用户名、封装登录事务、添加思考时间 集合点:不使用 加压减压方式:全部初始化爬坡加压、全部退出 场景运行时设置:think time=1s、continue when error、log选择Send messages only when an error occurs 重点关注指标:响应时间、tps,事务成功率,各个服务器资源使用情况(CPU、内存、磁盘I/O、磁盘容量)、网络、是否频繁fgc、是否线程阻塞、线程死锁、连接池未释放、数据库死锁、慢sql等等 预期指标:并发>=1000,响应时间<=1s,tps>=600,事务成功率为99.5%(涉及资金的,要求100%),应用服务器、数据库服务器CPU和内存使用率<=90%,没有内存泄漏现象、没有死锁等各种性能问题。
另外,混合场景、稳定性场景的用例设计,有不清楚的可以联系作者。