性能测试工具-jmeter
jmeter安装步骤:
参考博客:https://www.cnblogs.com/auguse/articles/11647133.htm
性能测试的分类
基准测试:单线程测试,在测试的时候使用单线程多次进行测试,可以调换到服务器某个硬件,例如 CPU 内存
压力测试:模拟大规模用户访问系统,看系统在极限情况下也就是CPU、内存或者网络消耗完的情况下服务器所
能承受的最大的负载(线程)。
负载测试:在规定了软硬件资源(CPU使用率在75% 内存使用在80%)的请求下,测试服务器的最大负载(线
程)
并发测试:并发测试是指通过模拟多个用户并发访问同一个应用或者同一个功能,业务上有:秒杀、抢购、抽
奖、摇号
性能测试:请求只要对服务器产生了压力,就是我们需要测试的,同一时间,对于某个系统而言,所有的用户不可能做同一件事,就例如淘宝:同一时间
有人在登录、有人在购买商品、商家添加商品、还有人在浏览器商品
性能测试的步骤:
1、提取测试需求,(cup 使用率不能超过75% ,要能满足1000线程)
2、编写测试计划(要设计的场景,测试策略(基准测试、压力测试、负载测试)、测试通过标准(cup 使用率不
能超过75% ,要能满足1000线程)、测试数据准备、)
3、开发性能测试脚本
4、执行测试脚本
5、结果分析
6、形成测试报告
jmeter如何设置思考时间?
在jmeter中使用定时器来达到思考时间的设置
什么是思考时间?
思考时间(Think Time)也称为“休眠时间”,是指用户在进行操作时,每个请求之间的时间间隔。对于交互系统来说,用户不可能持续不断地发出请求,一般情况下,用户在向服务端发送一个请求后,会等待一段时间再发送下一个请求。性能测试过程中,为了模拟这个过程而引入思考时间的概念。在测试脚本中,思考时间为脚本中两条请求语句之间的间隔时间。当前对于不同的性能测试工具提供了不同的函数来实现思考时间。
一、定时器的作用域
1、定时器是在每个sampler(采样器)之前执行的,而不是之后(无论定时器位置在sampler之前还是下面);
2、当执行一个sampler之前时,所有当前作用域内的定时器都会被执行;
3、如果希望定时器仅应用于其中一个sampler,则把定时器作为子节点加入;
4、如果希望在sampler执行完之后再等待,则可以使用Test Action;
二、定时器详解(常见的两种)
1、固定定时器Constant Timer
需要让每个线程在请求之前按相同的指定时间停顿,就可以使用这个定时器;需要注意的是,固定定时器的延时不会计入单个sampler的响应时间,但会计入事务控制器的时间
2、统一随机定时器Uniform Random Timer
该计时器将每个线程请求暂停一个随机的时间量,每个时间间隔的发生概率相同。总的延时等于随机延时 + 偏移延时值。
Random Delay Maximum(in milliseconds):随机延迟最大值(以毫秒为单位)
Constant Delay Offset(in milliseconds):恒定延迟偏移量(以毫秒为单位)