前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Jmeter接口测试之参数化(十)

Jmeter接口测试之参数化(十)

作者头像
无涯WuYa
发布2018-10-24 12:49:25
1.5K0
发布2018-10-24 12:49:25
举报

在接口测试中,某些时候一些场景会使用到参数化的场景,参数化简单的说就是同一个请求需要不同的数据,比如在性能测试中需要并发多个用户的场景,这样的目的是为了模拟真实的用户场景,需要模拟不同的账号,这里就需要参数化的过程。在Jmeter中参数化处理主要会应用到配置元件中的CSV数据文件设置。下面通过不同的案例来说明这部分在接口测试中详细的应用。

第一个案例是查询号码的归属地,见该接口的文档信息:

代码语言:javascript
复制
POST /WebServices/MobileCodeWS.asmx HTTP/1.1
Host: ws.webxml.com.cn
Content-Type: text/xml; charset=utf-8
Content-Length: lengthSOAPAction: "http://WebXml.com.cn/getMobileCodeInfo"

<?xml version="1.0" encoding="utf-8"?>
<soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
  <soap:Body>
    <getMobileCodeInfo xmlns="http://WebXml.com.cn/">
      <mobileCode>string</mobileCode>
      <userID>string</userID>
    </getMobileCodeInfo>
  </soap:Body>
</soap:Envelope>
代码语言:javascript
复制
HTTP/1.1 200 OK
Content-Type: text/xml; charset=utf-8
Content-Length: length<?xml version="1.0" encoding="utf-8"?>
<soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
  <soap:Body>
    <getMobileCodeInfoResponse xmlns="http://WebXml.com.cn/">
      <getMobileCodeInfoResult>string</getMobileCodeInfoResult>
    </getMobileCodeInfoResponse>
  </soap:Body>
</soap:Envelope>

下面就在Jmeter中创建线程组,以及HTTP的请求来测试这部分,见如图所示的部分:

下来要实现的是期望每次发送请求的时候,参数mobileCode是不同的参数,那么首先在该线程组添加CSV数据设置文件,添加的步骤是右键线程组,点击配置元件,然后选择CSV数据设置文件,如图所示:

选择后,然后在Jmeter的目录下创建script,再该目录下mobile.csv的文件,见该文件的内容:

如上图显示的是测试过程中使用到的电话号码,在创建的CSV数据设置文件中导入该文件,并且填写变量名称,如下图所示:

在mobile.csv文件中填写了4个不同的电话号码,并且变量名称是mobile,那么在接口请求的参数中调用该变量名称,调用的方法是:${mobile},如下图所示:

然后调整线程组,设置执行4次,如下图所示:

一切设置完成后,点击执行,可以看到接口执行了四次,并且每次调用的是不同的电话号码,见下图所示:

在参数化的场景中,存储文件的方式很多,也可以使用记事本,不一定说非要csv的文件,在记事本中填写测试的电话号,见内容:

然后在CSV数据设置文件导入mobile.txt的记事本文件,如下图所示:

再次执行,见执行后的结果截图:

下面来看其它场景中,比如登录的时候有不同的请求参数怎么处理,比如51 CTO网站的登录,见如下51CTO网站登录的请求参数:

对请求的这些参数进行参数化的处理,特别是对登录账号和登录密码,见51cto.txt文件的内容:

然后创建CSV数据设置文件,导入该文件并且设置变量名称,见截图:

设置执行两次,见执行后的请求参数截图:

OK,Jmeter的参数化今天就介绍到这里。

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2018-09-02,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 Python自动化测试 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档