性能测试
测试需求:完成电子商务系统的以下模块相应的性能测试工作。
- 对登录进行并发负载测试。
- 对产品查询进行容量负载测试。
- 对多场景进行48小时疲劳性测试,测试系统内是否存在内存溢出错误。
- 对登录进行强度测试,测试在高强度下运行半个小时后可否恢复正常的工作。
按照JMeter官方要求,所有的测试必须在命令行模式下运行,并且在负载测试拐点处、疲劳性测试、强度测试下使用监控工具监控被测端与压测端的状态。
建立性能测试元件
关于性能测试的知识可以参阅我的另一本著作《全栈软件测试工程师宝典》中的第3章内容
1单功能性能测试搭建步骤
1)打开ebusiness_login.jmx。
2)在最后加入一个登出HTTP请求,如图1所示。
图1 登出HTTP请求
3)将线程组按照如图2进行设置。
图2 修改线程组设置
- 取样错误后要执行动作:选择启动下一个循环。
- 线程数:50。
- Ramp-Up时间:5。即50个用户在5秒内加载完毕。
- 循环次数:永远。
- 启用调度器。
- 持续时间:600秒。
- 启动演延时:5秒。
4)修改循环控制器的循次数为10。
5)右击登录HTTP请求,在弹出菜单中选择“添加->定时器->Synchronizing Timer(同步定时器)”。按照图3所示。关于同步定时器将在第4.2-1节进行介绍。
图3 同步定时器
- 模拟用户组的数量:50。也就是说并发用户为50个。
- 超过时间以毫秒为单位:5000,即如果在5000毫秒(5秒)内满足不了模拟用户组的数量。来多少发送多少。
同步定时器相当于LoadRunner中的集合点。
6)右击登录HTTP请求,在弹出菜单中选择“添加->定时器->统一随机定时器”。按照图4所示。
图4 登录定时器
- 修改名称:登录定时器。
- Random Delay Maximum(in milliseconds):1000。
- Constant Delay offset(in milliseconds):3000。即定时时间为在[3000-4000]毫秒的一个随机数。
7)右击商品列表HTTP请求,在弹出菜单中选择“添加->定时器->统一随机定时器”。按照图5所示。
图5 商品列表定时器
- 修改名称:商品列表定时器。
- Random Delay Maximum(in milliseconds):1000。
- Constant Delay offset(in milliseconds):3000。即定时时间为在[3000-4000]毫秒的一个随机数。
由于登录需要输入信息,所以延迟时间设置的略长些。这里的统一随机定时器相当于LoadRunner中的集合点中的思考时间,也可以用同步定时器、高斯随机定时器和泊松随机定时器进行。关于固定定时器、统一随机定时器、高斯随机定时器和泊松随机定时器,将在第4.2-2节、第4.2-3节、第4.2-4节和第4.2-5节进行介绍。
8)右击线程组,在弹出菜单中选择“添加->监听器->汇总报告”。关于汇总报告将在第4.3-2节进行介绍。
9)右击线程组,在弹出菜单中选择“添加->监听器->汇总图”。关于汇总图将在第4.3-3节进行介绍。
10)右击线程组,在弹出菜单中选择“添加->监听器->聚合报告”。关于聚合报告将在第4.3-1节进行介绍。
11)右击线程组,在弹出菜单中选择“添加->监听器->响应时间图”。关于响应时间图将在第4.3-4节进行介绍。
12)右击线程组,在弹出菜单中选择“添加->监听器->图形结果”。关于图形结果将在第
3.3-5节进行介绍。
13)点击运行,确保配置正确。