Jmeter接口自动化测试
2017-05-05 本文已影响2382人
何必如此
从开发转做测试两年多了,由于公司项目太多一直周旋在点点点功能测试中,虽然曾经针对公司产品搭建了自动化测试框架编写了自动化脚本,由于其他同事不懂编码自动化测试一直未被推行起来,再后来由于出差、怀孕、生娃...一系列原因导致自动化测试搁浅。终于在今年4月底有了空闲时间,突然间发现自己这两年多一直止步不前,在测试方面没有任何突破性进展,就给自己安排了一个提升技能的计划,第一步先从接口自动化测试开始下手,刚好为6月份产品的接口测试做准备,下面是我自己花了一天时间学习的内容(很初级),有不对的地方欢迎指正。
一、http接口自动化测试
1.打开Jmeter会自动生成一个测试计划,右击测试计划-创建线程组

2.创建http请求默认值

一般所有接口请求的服务器IP(或域名)以及端口号会在这里设置

3.创建http请求

(1)get请求,传递参数json格式
路径里面填写接口连接除服务器IP或者域名的部分,如果get请求传的参数是json格式,要记得勾选后面的编码,我一开始没有勾选,导致传的参数未被转义,接口传的参数一直有问题

(2)post请求,传参json格式
添加http信息头管理器(只针对post请求有效),设置传参格式

请求参数设置

大家会看到我的接口请求路径里面有一个参数,我在这里把接口连接中的公共部分拿出来设置为全局变量,这个全局变量在用户自定义变量里面进行设置,易发生改变并且每个接口中公用的部分都可以设置为全局变量,每次修改只用修改一处即可
4.设置用户自定义变量(我认为的全局变量)

5.添加断言,作为用例是否执行成功的判断标准

返回结果中包含"msg":"操作成功",代表接口执行成功

6.大家刚刚应该看到每个接口传的参数的值我都是放在的用例里面,这样数据和用例放一起,修改起来比较麻烦,也不利于用例的维护,那么我们就要进行数据分离


获取参数值

7.添加接口执行结果报告视图
线程-添加-监听器分别添加:查看结果树,用表格查看结果,聚合报告
查看请求信息和响应数据以及每个接口的执行结果:

用表格查看结果:

聚合报告:

二.webService接口测试
创建webservice接口请求


此文章只是简单的对Jmeter接口自动化测试的过程进行了描述,比较简单,如果有不恰当的地方,欢迎指正。
这只是开始,后面的路还很长.....