Jmeter多接口测试性能测试

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

一、接口业务流程

1、获取token接口

http://192.168.1.4:9900/rest/getToken/

2、获取图片链接口

http://192.168.1.4:9900/regist/getImagePath/?token=89bd9d88f4f3421c9e639dfab0c a423c&type=fql

返回数据:

{"msg": "\u6210\u529f", "code": 0, "detail": {"image_path":

"/images/regist/20160822/img1471837595.25.jpg"}}

3、获取图片验证码接口

http://192.168.1.4:9900/images/regist/20160822/img1471850521.18.jpg

4、获取注册结果接口

http://192.168.1.4:9900/regist/imageView/?imagecode=zds4&phone=182********&t oken=89bd9d88f4f3421c9e639dfab0ca423c&type=fql

二、JMETER的使用

1、基本操作

1.1、新增测试计划

新增线程组,接着在该线程组下方新增4个“HTTP请求”(添加-Sampler-HTTP请求),

再在该线程组下方添加“察看结果树”(添加-监听器察看结果树)。也可以在每个HTTP请求下方添加“察看结果树”,方便找到需要正则或参数化的数据。

一个完整的测试计划诞生了,如下图2.1所示

图2.1

1.2、配置HTTP请求

以上图中的“HTTP请求01”为例进行说明。在HTTP请求窗口中的Basic标签页面上输入服务器名称或IP、端口号和路径(路径URL地址端口号后面的),其他默认,如下图2.2-1所示。此时可以执行下然后在当前的HTTP请求01的察看结果树里检查接口是否能正常访问(如下图2.2-2所示)。

图2.2-1

图2.2-2

1.3、使用正则表达式

还是以上图2.2-1中的“HTTP请求01”为例进行说明。因为这个接口会得到一个动态值,而且这个动态值会被其他接口使用。在上图 2.2-2中得到一个响应数据:{"msg": "\u6210\u529f", "code": 0, "detail": {"token": "a53b93507c9d4f3fa43de4a44073bbb6"}}。在使用第二个接口(HTTP请求02)时需要一个参数值token,而这个值必须调用第一个接口后才能获取到。如果让其他接口使用这个动态值,那么我们就需要在第一个接口(HTTP 请求01)上使用正则表达式来获取这个返回值。

A、首先在第一个“HTTP请求01”上点击添加后置处理器-正则表达式提取器,如下图

3.3-1所示

图3.3-1

B、在下图3.3-2中输入“引用名称”(自定义数据名称,在其他接口中会用到)、“正则

表达式”、“模板”、“匹配数字(0代表随机)”,其他默认。

图3.3-2

说明:正则表达式可以看做是LR中的手动关联,从“察看结果树”-“响应数据”区域找到

返回值:{"token": "a53b93507c9d4f3fa43de4a44073bbb6"}。这条字符串就是需要关联的,

所以正则表达式输入为:"token": "(.+?)"。其他的不解释,照写即可,哈哈。完成以上设置后运行下JMETER,在“察看结果树”区域察看结果是否正确(绿色表示正确)。

C、在第二个接口(获取图片地址)中需要这个正则后的数据,此时在“HTTP请求2”的Basic标签页面的Parameters区域添加接口参数(token和type),其中token值使用接口1中的正则表达式中的变量名(token),此token值为${token},如下图3.3-3所示。最后保存并执行,如果HTTP请求2(获取图片地址)的响应数据显示为绿色则表示设置成功。

图3.3-3

同理,HTTP请求3(获取验证码)接口中需要动态生成的图片地址,那么就需要设置HTTP请求2(获取图片地址)接口中的正则表达式,然后再在HTTP请求3接口中的URL 地址上引用接口2的正则变量即可。

1.4、变量参数化

此业务流程是首先获取token然后得到图片地址,接着获得验证码,最后得出注册信息。在HTTP请求4(获取注册信息)的接口信息中发现多了一个手机号(phone)。如果想得到不同手机号对应的注册信息,那么就需要对接口4的手机号进行变量参数化。

A、在HTTP请求4上添加“配置元件-CSV Data Set Config”,如下图4.4-1所示

图4.4-1

B、元件添加成功后,使用TXT新建一个CSV文件(注意,这里必须使用TXT文件然后另存为CSV文件,不然执行时会报错全是乱码)。在CSV文件中输入多个值(这里是手机号,一行显示一条手机号,我在CSV文件中写了5个不同的手机号),然后保存CSV文件(记住存放路径)。

C、新建CSV文件后,切换到刚才添加成的CSV Data Set Config窗口,在“Filename”输入CSV的存放地址(包括CSV文件名称),在Variable Names(comma-elimited)中输入自定义的变量名称(此变量会用到HTTP请求4的参数值中,我这里设置为phonenum),其他默认,如下图4.4-2所示

图4.4-2

D、现在切换到HTTP请求4(获取注册信息)窗口中,在Parameters标签页面中添加4个参数(因为此接口带4个参数)imagecode、token、type、phone。参数值分别是zds4、${token(HTTP请求1中的正则表达式)、fql、${phonenum}(刚刚设置的参数化),如下图4.4-3所示

图4.4-3

相关文档
最新文档