接口测试总结


一、数据格式

1、表单

2、XML

3、JSON

1.1 、表单格式

xml格式和表单格式学习是使用webxml国内手机号码归属地查询WEB服务

http://ws.webxml.com.cn/WebServices/MobileCodeWS.asmx?op=getMobileCodeInfo

Postman中

 postman中 表单格式的请求参数在Body下的x-www-form-urlencoded下填写

JMeter中

 jmeter中 表单格式的请求参数在图中的“参数”下填写

1.2、XML格式

xml格式和表单格式学习 是使用webxml国内手机号码归属地查询WEB服务

http://ws.webxml.com.cn/WebServices/MobileCodeWS.asmx?op=getMobileCodeInfo

Postman中

 postman中 XML格式的请求参数在Body下的raw下的XML填写

JMeter中

  jmeter中 XML格式的请求参数在“消息体数据”下填写

1.3、JSON格式

JSON格式学习用测试平台

http://101.43.158.84/#/login

Postman中

  postman中 JSON格式的请求参数在Body下的raw下的JSON填写

JMeter中

 

 jmeter中 JSON格式的请求参数在“消息体数据”下填写

二、请求头

postman中

 postman中请求头写在Headers中

jmeter中

(图1)

 (图2)

  jmeter中的请求头需要写在HTTP信息头管理器中。

如图1的 HTTP信息头管理器作用于登录、首页和产品管理的所有请求,如果不希望这样,可以放在把请求头和搭配的请求放在一个简单控制器(理解为文件夹)中,这样不影响别的请求头如图2。

 三、请求方法

3.1GET方法

postman中

 postman中get方法的请求参数是写在资源路径的后方的,它会自动显示在Query Params下面

jmeter中

 jmeter中get方法的请求参数也是写在路径中

3.2POST方法

postman中

 post方法一般都有请求参数,根据参数的格式不同,写在Body下的form 或raw中的json或xml 下

jmeter中

 post方法的参数根据参数的格式,form格式写在“参数”,json或xml格式写在“消息体数据”中。

四、动态参数 

在登录成功后,会返回一个token,token是随机生成的,不是固定的,我们在访问个人主页中,还需要用到这个动态的token,所以我们我对动态参数进行处理。

4.1PostMan实战 

PostMan描述

在登录接口的Tests中,给返回的响应数据定义一个变量jsonData,然后给响应数据(jsonData)的token定义到一个变量。

在首页接口的响应头中,通过双层花括号来调用这个动态参数。(这种主要是从响应数据中提取变量)

4.2JMeter实战 

通过json提取器

描述:

 在登录页面通过JSON提取器 提取到token ,并且定义一个变量,在首页接口的请求头中通过${}调用变量

通过正则表达式提取器

描述:

 在登录页面通过正则表达式提取器 提取到token ,并且定义一个变量,在首页接口的请求头中通过${}调用变量

五、测试报告

 PostMan实战

 

 描述:

从postman中导出collection 放在一个位置,从cmd中进入这个位置,执行命令new run 文件名.json -r -html   生成html测试报告

JMeter实战

1、安装 解压、配置环境、验证ant

2、jmeter目录下新建tests文件夹(tests文件夹里面存储测试脚本和测试报告),在tests文件夹下新建report和script文件夹,再在report文件夹下新建html和jtl文件夹

3、把jmeter保存的测试脚本保存到script下

4、把jmeter下的extras文件下的ant-jmeter-1.1.1.jar复制,粘贴到ant下的lib文件中

5、编写build.xml文件,把build.xml放在jmeter的tests的文件下

6、在jmeter的bin目录下找到jmeter.properties用记事本打开,CTRL+F找到#jmeter.save.saveservice.output_format=csv,然后把井号取消,等号后面改为xml

7、activation.jar, commons-email-1.2.jar,   mail.jar,这三个文件放在ant的lib目录下

8、完善build.xml文件:

修改jmeter地址 加上接受报告的qq邮箱 要执行的测试脚本的名字

9、在控制台进入到tests,输入ant,这时在report下的html中,会有测试报告

 

 描述:从cmd进入jmeter下的tests文件下,输入ant执行命令 生成测试报告,报告会放在tests下的report下的html中

六、数据驱动

postman中

 描述:把公共的数据分离出来,比如地址,如果开发修改了,我们改起来也会方便。

JMeter中

方式1:HTTP请求默认值

 描述:主要是把测试请求中的地址、端口、内容编码分离出来,在测试用例中不用再填。如果开发修改了,我们修改起来也方便。

 方式2:用户自定义的变量

把公共的数据分离出来。把用户名和密码放在一个位置(数据驱动的思想主要是把我们输入的公共的信息,放在一个位置,方便调用和修改)

七、参数化

场景:同一个测试步骤,需要不同的测试数据来测试。主要是用于迭代。

txt格式:

 

 当数据为2组时,需要线程组的线程数改为2:(内部会进行依次调用两组数据)

csv格式:

CSV文件和excel文件一模一样,就是用excel工具写入数据后 在保存时选择csv后缀

 

 

 

 

session: 请求描述 JMeter实战