jmeter接口测试中的用例数据分离
用jmeter做接口测试的话,一个jmx文件就可以是一个用例,而用例的设计多数还是等价类、边界值等方法。用例越来越多的时候,维护比较麻烦,所以可以把用例的数据存在csv文件中,然后通过组件(CSV Data Set Config)去读取就行了。
这里以http://httpbin.org/的get和post为例,进行操作(目前就职的互联网金融公司,就不用公司的api了)。
1、先创建一个测试计划--线程组,然后添加HTTP请求默认值,然后加个循环控制器(这里跑4次,也可以通过线程组那边的设置控制)
2、添加参数化的组件(CSV Data Set Config),这个组件怎么用我就不多说了,详见https://www.cnblogs.com/zichuan/p/6938774.html
注:Filename用.csv文件可能会更加直观,但是我习惯用.dat(因为我被乱七八糟的编码格式坑过的次数太多了)。
参数解释:
1)case_seq:用例编号
2)api_type:api类型
3)api_seq:api版本号
4)api_name:api名称
5)url:api路径
6)methods:请求方法
7)parameter:请求参数
8)expect_value:预期,用于断言
3、可以加个if控制器,把get和post区分一下
下面两个选项都不用勾选,至于具体的含义,可以百度一下,这里就不解释了。
4、创建请求,添加断言,查看结果树
注:为了直白的区分每个请求,我在dat文件里面加了不少字段,这个是可以自己自定义的。
关于post的传参,我感觉看着有点怪,但仔细想想也是正常的。其实核心就是jmeter的参数化,实际运用场景,按照这个思想去套就行了。运行结果如下: