jmeter常用操作说明
一、测试依赖登陆的接口。
1、构造登陆的接口请求,添加正则表达式,提取token。
正则表达式提取器说明:
Apply to:应用范围(一般就选择默认的Main sample only),就算有重定向,一般也是提取最终那个请求的接口。
要检查的响应字段:样本数据源。
主体: 接口响应主体内容,一般要提取普通http响应结果的数据,都勾选这个。
信息头:响应头的所有内容。
Request Headers:请求头的所有内容。
url:是对sample的url进行匹配,也就是查看结果树里请求内容的第一行url,不包含data里的请求参数(即只能匹配protocol(协议)+host+path+querystring,如:https://www.baidu.com/index.php?tn=monline_3_dg)。
响应代码:http响应代码,如101,200,302,404,501等。
响应信息:http响应代码对应的响应信息,例如:OK, Found(HTTP/1.1 200 Ok;HTTP/1.1 302 Found)。
引用名称:其他地方引用时的变量名称,名称只能是一个。
正则表达式:数据提取器,一般简单的通用语法就是:左边界(.*?)右边界,左右边界就是为了能准确定位到想匹配的内容。
缺省值:匹配失败时的默认值。通常用于后续的逻辑判断,建议使用一些特殊含义的,比如0,NULL,ERROR等。
2、添加HTTP信息头管理器,引用token值。
3、构造依赖登陆的接口请求。
二、生成脚本
第一种方法:采用badboy录制(只能是web端的),导出jmeter脚本。
第二种方法:利用fiddler抓包,获取接口信息,在jmeter上构造请求。(web端和app端)
第三种方法:利用jmeter录制脚本(web端和app端)
步骤:给网页或手机设置代理,端口号和jmeter的一致,
Jmeter:添加线程组;添加http代理服务器,设置一下如下图。设置好,点击【启动】。
三、压测数据库
1、下载数据库驱动,添加到jmeter的lib目录下。
2、添加到测试计划下
3、添加线程组,添加配置元件JDBC connection configuration,配置JDBC connection configuration
4、添加JDBC Request,Variable name和上图保持一致。
5、添加查看结果树,执行,并查看结果。
6、注意:如果需要一次执行多条语句,在第3步的时候Database URL后面添加如下的信息
jdbc:mysql://172.16.14.28:3306/shop?allowMultiQueries=true
相应地,在在第4步的时候,Query Type 选择 Callable statement。
四、CSV参数化
1 创建csv文件
创建.csv文件,用户名和密码中间以逗号隔开
2 在线程组中添加并配置CSV Data Set Config
添加CSV Data Set Config
配置CSV Data Set Config
Filename: 指保存信息的文件目录,可以相对或者绝对路径。否则会在jmeter日志文件(jmeter.log目录位置D:\Program Files\apache-jmeter-2.13\bin)中提示:系统找不到指定文件,运行脚本后,登录失败。
File encoding: 保持默认。默认为ANSI
Variable Names: 给csv文件中各列起个名字(有多列时,用英文逗号隔开列名)便于后面引用
Delimiter:与 .csv文件的分隔符保持一致。如文件中使用的是逗号分隔,则填写逗号;如使用的是TAB,则填写\t;
Allow quoted data? :是否允许引用数据,—这个目前还未弄明白,设置成True或者False都能正常引用数据。
Recycle on EOF?:到了文件尾是否循环,True—继续从文件第一行开始读取,False—不再循环
Stop thread on EOF? :到了文件尾是否停止线程,True—停止,False—不停止,注:当Recycle on EOF设置为True时,此项设置无效。
Sharing mode:共享模式,All threads –所有线程,Current thread group—当前线程组,Current thread—当前线程。
All threads:计划中所有线程,假如说有线程1到线程n (n>1),线程1取了一次值后,线程2取值时,取到的是csv文件中的下一行,即与线程1取的不是同一行。
Current thread group:当前线程组,假设有线程组A、线程组B,A组内有线程A1到线程An,线程组B内有线程B1到线程Bn。取之情况是:线程A1取到了第1行,线程A2取第2行,现在B1取第1行,线程B2取第2行。
Current thread:当前线程。假设测试计划内有线程1到线程n (n>1),则线程1取了第1行,线程2也取第1行。
3 引用csv文件中的数据
1)找到需要传递参数的HTTP请求
2)将具体值改为变量引用,引用变量:${变量名}
4 在察看结果树中,察看变量引用的具体值
jmeter常用操作说明相关推荐
- JMeter常用测试元件和组件参数化
目录 一.JMeter常用测试元件 1.线程组 2.调度器 3.控制器 4.监听器 5.定时器 6.断言 7.配置元件 8.前置处理器 9.后置处理器 二.Jmeter组件参数化 1. 参数化是什么 ...
- jmeter常用随机函数
jmeter常用随机函数 邮箱类: ${__RandomString(8,abcdefghijklmnopqrstuvwxyz,)}@http://126.com 手机号类: ${__Random(1 ...
- JMeter学习笔记--JMeter常用测试元件
JMeter测试计划有一个被称为"函数测试模式"的选项,如果被选择,它会使Jmeter记录来自服务器返回的每个取样的数据.如果你在测试监听器中选择一个文件,这个数据将被写入文件.如 ...
- jmeter常用插件介绍
jmeter作为一个开源的接口性能测试工具,其本身的小巧和灵活性给了测试人员很大的帮助,但其本身作为一个开源工具,相比于一些商业工具(比如LoadRunner),在功能的全面性上就稍显不足. 这篇博客 ...
- jmeter吞吐量_深入理解Jmeter常用定时器
bug 前言 jmeter并发测试每个请求之间是没有延时的,但实际工作有时候需要增加固定时间来测试,那么可以Jmeter定器组件,完成工作.其实这些知识百度一查就出来,为什么还要写,主要方便自己复习, ...
- JMeter 常用的几种断言方法,你会几种呢?
在使用Jmeter进行性能测试或者接口自动化测试工作中,经常会用到的一个功能,就是断言.断言是在请求的返回层面增加一层判断机制.因为请求成功了,并不代表结果一定正确,因此需要判断机制提高测试准确性.本 ...
- 【Jmeter常用断言组件】
1.断言组件说明 Jmeter为我们提供了多种类型的断言组件,常用的断言组件比如响应断言.JSON断言.大小断言等,不同的断言组件适用于不同的场景,今天主要介绍常用的这几类断言组件. 1.1 响应断言 ...
- jmeter(二十一)jmeter常用插件介绍
https://www.cnblogs.com/imyalost/p/7751981.html jmeter作为一个开源的接口性能测试工具,其本身的小巧和灵活性给了测试人员很大的帮助,但其本身作为一个 ...
- jmeter常用逻辑控制器的使用(如果(if)控制器)
jmeter很强大,他无所不及 今天,这篇文字着重讲述jmeter的一些常用的控制器,老规矩,不懂的,先赞后问,咱们开始吧 一, 如果(if)控制器 1.1 大概意思 从这个名称不难理解意思,这个控制 ...
- Jmeter常用断言实战详解
断言:依靠软件程序自动判断操作结果的正确性,用于检查测试中得到的响应数据等是否符合预期.在接口测试用例中没有断言的接口用例是无效的,一个接口的断言有三个层面,一个是HTTP状态码的断言,另外一个是业务 ...
最新文章
- 显示股票信息页面的开发
- 基于OpenCV的实战:轮廓检测(附代码解析)
- DengAI —数据预处理
- TS DataType
- 真香!AirPods Pro美国全网脱销,网友:而我内心却毫无波澜
- ASP.NET-第三天-加强课程
- qqzoneQQ空间漏洞扫描器的设计attilax总结
- 程序化交易学习笔记(六、模式、日内交易模型、Tick模型)
- 使用python3+pyqt5实现图片识别文字工具
- Coverage [minx,miny,maxx,maxy] is [12, 4, 13, 6, 3], index [x,y,z] is [2, 5, 3]错误原因及其解决方式...
- QQ互赞助手pro【每天免费互shua名片赞】2.0系统版本
- EFS加密的注意细节
- JMF的安装与环境的配置
- Proxy(代理) ARP作用及原理
- 优麒麟mysql_Ubuntu kylin优麒麟下配置Hive环境
- matlab中diag什么,线性代数里的“diag”是什么意思?
- LayUi做登录注册
- xa 全局锁_索尼Sony Xperia X/Performance/XA解锁教程及解锁码
- Python入门自学进阶——9-网络编程-远程执行命令
- python自动化接口测试excel脚本_python+ddt+unittest+excel+request实现接口自动化