jmeter总结

主要组件

测试计划 test plan

线程组 thread group

配置元件 configuration

逻辑控制器 logic controller

取样器 sampler

断言 assertion

监听器 monitor

正则表达式提取器


线程数:请求发送的用户数,即并发数

ramp-up period(in sencond):创建完所有线程的时间,防止对服务器有太大负载


一个简单的压测

如下设置:10秒内启动100个线程(100个用户),每个samper请求访问一次。相当于每秒启动10个用户



报告分析

Label:http请求名称

Samples:一个http请求发起的次数

Average:每个请求的平均响应时间

Mendian:50%的用户响应的时间

Min:最小时间

Max:最大时间

Error%:本次请求中响应错误的占比

Throughtput:吞吐量,每秒完成的请求数,request per second

KB/sec:每秒从服务器接收到的数据量


性能指标

QPS:query per second 每秒查询率

并发用户数量:线程数

吞吐率:KB/sec,每秒从服务器接收到的数据量

点击率:samples/sec,每秒向服务器发送的请求的数量


断言


响应断言
bean shell断言
jp@gc - JSON Path Assertion断言

获取响应数据中的值


获取response中的data数据中的count值


获取数组长度,data数据中的rows数组


获取数据长度,多层数组嵌套结构


Q:用户定义的变量需要防止在一个结构树的最前面位置执行吗

A:会在测试的初始阶段执行,无论它处于测试数的什么位置

Q:什么时候使用事务控制器?为什么要使用事务控制器?

A:将多个samper请求放置在一个事务控制器下面,选中gegeate parent sample,那么聚合报告中将统计的是各samper请求数据的总计值,用于有多个请求是完成同一个目的

Q:正则表达式提取器作用是什么?

A:作用:从请求的响应结果中取到需要的内容,然后再其他地方引用

Q:正则表达式提取器使用方法?

1、引用名称:是指在其他地方使用${变量名}进行引用

2、正则表达式:比如要提取响应文本"<title>百度一下,你就知道</title>百度一下,你就知道"中的"百度一下,你就知道",那么正则表达式就为:<title>(.*)</title>,括号里的内容代表要获取的内容百度一下,你就知道百度一下,你就知道百度一下,你就知道

3、模板:用$$引用起来,如果正则表达式中有多个括号括起来的值,如<title>(value1)(value2)(value3)</title>,则模板可以是:$0$,$1$,$2$,分别对应

4、匹配数字:0代表随机,-1代表所有,其余正整数代表将在已提取的内容中

5、缺省值:正则匹配失败时,取的值

Q:接口请求有登陆权限控制,每次访问接口的时候,都提示我没有登陆,无权访问,怎么解决?

A:发送请求的时候经常要校验cookies信息,no cookies或者cookies无效的时候,都访问不了接口,jmeter有一个元件:HTTP Cookie 管理器


cookie从哪里获取?抓包工具,或者浏览器F12键都可以获取到这个接口请求的cookies数据,如下图为charles中请求接口request中cookies中的数据,填写到上图cookies管理器中,再jmeter中访问接口,就会有Cookie Data的数据


最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 134,973评论 19 139
  • Android 自定义View的各种姿势1 Activity的显示之ViewRootImpl详解 Activity...
    passiontim阅读 173,455评论 25 708
  • 1 Jmeter安装配置 使用Jmeter前首先要安装JDK,配置JDK环境变量。Jmeter不需要安装,下载后...
    茶小汐阅读 2,970评论 0 8
  • 花开在泥土里 树根朝天空伸展 鱼儿游走在白云里 飞鸟在水中展翅翱翔 这些都是 遇见你时 我眼中看到的景色
    蜡笔小小丸子阅读 344评论 0 1