jmeter接口测试及详细步骤
一、接口测试流程
1.右键点击线程组添加 HTTP请求,此时在线程组下面出现HTTP请求选项。点击该选项,出现HTTP请求界面。如下
- 服务器名称或IP填你的服务器名或IP地址:192.168.96.8。
- 端口号填接口所用的端口号:如:8081
- connect表示连接时间,比如10000毫秒;response表示响应时间,比如10000毫秒。(可以不写)
- Implementation选HttpClient4;(可以不写)协议填http;Content encoding填utf-8。
- 路径填接口地址,比如登录接口/api/user/mobileLogin.jsp、/safe/0.0.1/JFFW/urlGenerate?access_token=f4fa6e9d-4302-4b68-b365-8539c06eca3f
- 添加参数,比如名称为username值为13246767401,名称为:password值为liang521 (或者填写你需要的请求报文)
----------------------------------------------------------------------------------------
2.在这里的参数区域分为:parameters和BodyData
①parameters:在这个中可以分开写,名称写参数名称 值就写参数需要请求的报文。
里面是键值的格式,如:
globalInfo {"fwsid":"credentials-client","fwid":"fe07501238e84f7a967036eba3480abe","qyid":"110101MXB6CK9617","jrfs":"app"}
data [{"fp_dm":"11001571071","fp_hm":"53744125","jshj":"3998.00"}] 数组的格式
access_token
1234567890987654321123456789876543
②BodyData :在这里可以把所有的报文写到一起,中间用逗号分开。如globalinfo和data参数。
1.如果使用Body Data进行参数化,一定要加上http请求头信息管理器的json格式类型:如 Content-Type: application/json
2.请求报文如:
{
"data":[{
"fp_dm":"111001571071",
"fp_hm":"53744125"
}],
"globalInfo":{
"fwsid":"credentials-client",
"fwid":"fe07501238e84f7a967036eba3480abe",
"qyid":"110101MXB6CK9617",
"jrfs":"app"
}
}
3.可以吧access_token写在路径的后面,如: /dxhytest/api/0.0.1/BXFW/queryBxzt?access_token=1234567890987654321123456789876543
------------------------------------------------------------------------------------------
3.右键点击HTTP请求添加--监听器--用表格查看结果。
4.右键点击线程组添加--监听器--用查看结果树、聚合函数。
"data":[{
"fp_dm":"111001571071",
"fp_hm":"53744125"
}],
"globalInfo":{
"fwsid":"credentials-client",
"fwid":"fe07501238e84f7a967036eba3480abe",
"qyid":"110101MXB6CK9617",
"jrfs":"app"
}
}
二、测试方法
1.我们这里先是通过token接口获取到访问token的参数报文。
2.然后在其他接口中写入访问token的报文,然后依次写入其他需要的报文。
3.成功以后查看结果树中的内容。
三、以下是我们的接口测试脚本
这里附上一个传送门:http://download.csdn.net/detail/qq514418695/9686509
四、相应断言:
这里的响应断言主要是针对HTTP请求返回的JSON字符串的,我们一般使用的是包括断言,就是返回的结果是否包含我们需要的信息。断言文本的截取可以在运 行结果树里进行,将结果显示类型改为Text(当然也可以JSON格式和Text格式对比着找),找出需要断言的信息。
五、定时器:
固定定时器的延时不会计入单个sampler的响应时间,但会计入事务控制器的时间。对于“事务控制器”来说,定时器相当于loadrunner中的 think time(思考时间:实际操作中,模拟真实用户在操作过程中的等待时间)。
一、定时器的作用域
1、定时器是在每个sampler(采样器)之前执行的,而不是之后(无论定时器位置在sampler之前还是下面);
2、当执行一个sampler之前时,所有当前作用域内的定时器都会被执行;
3、如果希望定时器仅应用于其中一个sampler,则把定时器作为子节点加入;
4、如果希望在sampler执行完之后再等待,则可以使用Test Action;
2016年11月18日12:31:23