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)。
引用名称:其他地方引用时的变量名称,名称只能是一个。
在这里插入图片描述
正则表达式:数据提取器,一般简单的通用语法就是:左边界(.*?)右边界,左右边界就是为了能准确定位到想匹配的内容。
模板:对应正则表达式提取器类型,样式为:。若模板为:,则为整个表达式匹配到的内容,就是包括小括号内跟小括号外的内容,即("token":"83EEAA887F1D2F1AA1CDA9E197810992","sex":0,"userName")。若模板为:,则对应正则表达式中的第一个(.*?)所匹配的内容,即(83EEAA887F1D2F1AA1CDA9E197810992) ,若模板为:,则对应正则表达式中的第二个(.*?)所匹配的内容,即(0),若模板为,则把2个(.*?)所匹配的内容拼接起来,即(83EEAA887F1D2F1AA1CDA9E1978109920)。模板是可以自由组合的。匹配数字:正则表达式匹配数据的最终结果可以看做一个数组,匹配数字即可看做是数组的第几个元素。当为 0 时,随机返回匹配的数据。当为 1 时,表示返回匹配结果数组的第一个元素。当为负数(-1,-2,-100都可以)时,表示返回全部元素,并且同时会返回一个元素总数的变量token_matchNr,在引用时:通过{token_2}来取第2个匹配的内容。
缺省值:匹配失败时的默认值。通常用于后续的逻辑判断,建议使用一些特殊含义的,比如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 在察看结果树中,察看变量引用的具体值
在这里插入图片描述

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值