使用jmeter手工录制脚本

        一般通过fiddler抓包或者开发提供的接口设计文档的形式,在Jmeter的GUI界面操作进行脚本生成,还可以使用编写java代码打包成jar包进行生成等方式。

        在Jmeter手工制作脚本之前,先要获取HTTP请求的相关信息,如请求地址、请求参数、 请求类型等,一般情况下,有两种方法获取这些相关信息:

1、根据开发提供的接口设计规范文档;

2、使用第三方抓包工具如Fiddler、 Charles等抓包, 然后从中提取信息。

        在介绍手工编写脚本时,就以我们公司的图表展示为例来讲解,使用的工具是jmeter和fiddler。

准备工作

1.增加过滤

把fiddler加上过滤功能,添加如下正则表达式,如下所示:

REGEX:(?insx)/[^\?/]*\.(css|ico|jpg|png|gif|bmp|wav|js)(\?.*)?$

使用jmeter手工录制脚本_第1张图片

2.调试环境

保证物理机与服务器的网络畅通,使用ping命令即可。

3. jmeter环境

jemter环境要搭建好,安装jdk和下载jmeter,此处省略。

录制步骤

第一步:添加线程组

打开jmeter,在测试计划中添加一个线程组,如下:

使用jmeter手工录制脚本_第2张图片

第二步:添加HTTP请求

在线程组中添加一个http请求,http请求添加方法:线程组 -->右键添加 -->Sampler -->HTTP请求如下:

使用jmeter手工录制脚本_第3张图片

 第三步:添加http请求默认值

因为默认值设置好以后,就对http请求有很大的方便,详细见下:

使用jmeter手工录制脚本_第4张图片

 将协议、ip或服务器名称、端口号、字符格式设置好,在之后的http请求就不用设置了,相当于设置好了一个全局的默认值:

需要注意的是:http协议的端口是80,https协议的端口是443。

 使用jmeter手工录制脚本_第5张图片

 第四步:手工写脚本

手工编写脚本注意事项:不要多空格也不要少空格,符号也要注意,细心会给自己调试脚本节省很多力气。

图表应用展示,使用fiddler抓取到四个请求,如下:

使用jmeter手工录制脚本_第6张图片

 1.编写第一个接口

将第一个请求的请求头复制到jmeter中的http请求中

使用jmeter手工录制脚本_第7张图片

 由于刚才设置了HTTP请求默认值,所以现在在HTTP请求中,协议,ip,端口号都不用填写了,是不是很方便了。

2.编写第二个接口

点击第二个请求,同样是get请求,直接将请求头复制到jmeter中的http请求中,注意有参数,get请求的话可以将参数直接写到路径下,也可以在下面的参数栏中填写。

使用jmeter手工录制脚本_第8张图片

 3.编写第三个接口

点击第三个请求,是post请求,查看请求地址和请求头,因为请求的地址和上面的两个请求不一样,我们在http请求里直接输入请求的url,

使用jmeter手工录制脚本_第9张图片

 因为有json格式的请求入参,我们在消息体数据里填写请求json串,且day这个参数我们想直接取系统当前时间的前一天,可以引入jmeter的一个函数来进行设置

使用jmeter手工录制脚本_第10张图片

 引用函数,见下图

使用jmeter手工录制脚本_第11张图片

 下面是_time Shift函数的介绍,可以参考进行设置

使用${__timeShift(yyyy-MM-dd,,P-1D,,)}

__timeShift(格式,日期,移位,语言环境,变量)函数,可以将时间进行移位,对当前时间增加或者减少对应的时间

(1)、格式 - 将显示创建日期的格式。如果该值未被传递,则以毫秒为单位创建日期。

(2)、日期 - 这是日期值。用于如果要通过添加或减去特定天数,小时或分钟来创建特定日期的情况。如果参数值未通过,则使用当前日期。

(3)、移位 - 表示要从日期参数的值中添加或减去多少天,几小时或几分钟。如果该值未被传递,则不会将任何值减去或添加到日期参数的值中。

“P1DT2H4M5S” 解析为“添加1天2小时4分钟5秒”

“P-6H3M”解析为“-6小时+3分钟”

“-P6H3M”解析为“-6小时-3分钟”

“-P-6H + 3M”解析为“+6小时和-3分钟”

(4)、区域设置 - 设置创建日期的显示语言。不是必填项

(5)、变量 - 创建日期的值将被分配给的变量的名称。不是必填项。

我们在脚本中可以这样设置${__timeShift(yyyy-MM-dd,,p-1d,,)},意思为取当前系统时间的前一天。

做完如上操作,基本的脚本就已经写完了,只剩脚本调试了,三个请求添加完成如下:

使用jmeter手工录制脚本_第12张图片

 4.添加查看结果树,执行脚本能收到正确的响应报文即说明我们脚本调试好了

使用jmeter手工录制脚本_第13张图片

在我们测试过程中,其实有好多测试工具可以使用的,可以大大的加快我们的测试效率,此次文章提到的fiddler和jmeter就是接口测试时很好用的测试工具,希望大家平时多练习多学习多总结,提升自己的测试能力。

你可能感兴趣的:(jmeter,fiddler,windows,自动化)