Jmeter接口测试自动化 (三)(数据驱动测试)
本文转载至http://www.cnblogs.com/chengtch/p/6105532.html
当我研究要通过用例优先级控制用例是否执行时,我发现了用"如果(if)控制器"就可以很好的控制用例执行,再搭配“循环控制器”,
就能很好的读csv了。
1、设计了如下的测试用例:
2、根据用例设计脚本结构:
3、测试用例与脚本之间的关联:
3.1 通过csv读取元件读取测试仪用例表格的每一行
3.2 http请求中关联用例的参数
我这里尝试着仅用一个http请求来依次 参数化执行所有用例,因此将请求名称、请求方法、请求参数等做了参数化:
因为get请求不能放在body data里面,所以放在路径后面:
3.3 if控制器来选择执行方式和选择执行路径
3.3.1 为了先判断用例的请求方法时get还是post,再按结果去执行对应的请求,做如下设置:
3.3.2 通过用例优先级选择是否执行
4、执行测试,查看结果
如下图可以看出:
(1)脚本只执行了优先级为high和normal的用例
(2)如果控制器很好的选择的正确的请求方法和参数传入方式
(3)虽然只有一个http请求,请求名参数化的方式很好的将测试接口的编号、名称、测试目的展示了出来,便于错误调试
5、总结
上面只是做了一个几条用例的demo来验证我的新想法,暂时看是蛮顺利。但当考虑到要用正则表单式来提取请求返回值作为后面用例的
参数,我又遇到了困难,如上图中的提交办件用例,用到启动办件用例的响应,但没法传过来。
暂时想到的解决方法:
(1)为尽量减少接口用例之间的耦合性,避免将前一请求的响应作为后面请求的参数
(2)无法避免的地方,另建线程组,通过加入多个http请求来测试简单流程
现在看来前面做的读取指定行的用例时全无必要的,if控制器君完全可以代劳。。。
Jmeter接口测试自动化 (三)(数据驱动测试)的更多相关文章
- WEB接口测试之Jmeter接口测试自动化 (三)(数据驱动测试) 接口测试与数据驱动
转载:http://www.cnblogs.com/chengtch/p/6576117.html 1简介 数据驱动测试,即是分离测试逻辑与测试数据,通过如excel表格的形式来保存测试数据,用测试脚 ...
- WEB接口测试之Jmeter接口测试自动化 (三)(数据驱动测试)
接口测试与数据驱动 1简介 数据驱动测试,即是分离测试逻辑与测试数据,通过如excel表格的形式来保存测试数据,用测试脚本读取并执行测试的过程. 2 数据驱动与jmeter接口测试 我们已经简单介绍 ...
- WEB接口测试之Jmeter接口测试自动化 (三)
接口测试与数据驱动 1简介 数据驱动测试,即是分离测试逻辑与测试数据,通过如excel表格的形式来保存测试数据,用测试脚本读取并执行测试的过程. 2 数据驱动与jmeter接口测试 我们已经简单介绍了 ...
- WEB接口测试之Jmeter接口测试自动化 (一)
软件测试自动化从不同的测试阶段分类,可从下层到上层依次分为单元测试-->接口测试-->界面自动化测试. 单元测试一般有开发人员自行完成,而界面自动化测试合适的测试条件又很难达到,测试人员在 ...
- WEB接口测试之Jmeter接口测试自动化 (一)(初次接触)
软件测试自动化从不同的测试阶段分类,可从下层到上层依次分为单元测试-->接口测试-->界面自动化测试. 单元测试一般有开发人员自行完成,而界面自动化测试合适的测试条件又很难达到,测试人员在 ...
- WEB接口测试之Jmeter接口测试自动化 (四)
Jmeter是压力测试.接口测试工具,Ant是基于Java的构建工具,具有跨平台的作用,jenkins是持续集成工具.将这三者结合起来可以搭建一套webservice接口测试的持续构建环境. 1. ...
- WEB接口测试之Jmeter接口测试自动化 (二)
通过逐个录入的方式,好不容易将需要测试几十个接口的300多个测试用例录入sampler-http请求中,固定的测试环境跑起来也还 感觉良好.不料在新服务器环境中跑用例时,问题来了:修改参数维护脚本等成 ...
- WEB接口测试之Jmeter接口测试自动化 (四)(持续构建)
转载http://www.cnblogs.com/chengtch/p/6145867.html Jmeter是压力测试.接口测试工具,Ant是基于Java的构建工具,具有跨平台的作用,jenkin ...
- WEB接口测试之Jmeter接口测试自动化 (二)(数据分离)
转载: http://www.cnblogs.com/chengtch/p/6105231.html 通过逐个录入的方式,好不容易将需要测试几十个接口的300多个测试用例录入sampler-ht ...
随机推荐
- calloc(), malloc(), realloc(), free(),alloca()
内存区域可以分为栈.堆.静态存储区和常量存储区,局部变量,函数形参,临时变量都是在栈上获得内存的,它们获取的方式都是由编译器自动执行的. 利用指针,我们可以像汇编语言一样处理内存地址,C 标准函数库提 ...
- Egret动态设置按钮的图片
参考: 动态设置Button按钮的状态图片 按钮有3个状态,up down disabled.这里区别于source,source.down,source.disabled,而是每个状态单独一个ima ...
- Android - 安装应用(APP) 不显示图标
装应用(APP) 不显示图标 本文地址:www.2cto.com 在启动的activity的AndroidManifest注册中,添加隐式启动的data: 删除应用图标的若干解决方案: 1.Andro ...
- 9.8Django
2018-9-8 14:34:38
- java 中静态变量(类变量)与实例变量 静态方法与实例方法
静态变量: 在类内部中,方法的外部声明的对象而且加上static; 实例变量: 在类内部中,声明不需要加static; 比如: public class Demo{ int i1=0; static ...
- Anaconda安装教程+Tensorflow教程
Anaconda安装 1.拿到安装包,点击安装 2.下一步 3.下一步 4.下一步 5.下一步 6.下一步 7.更改文件显示路径 ctrl+f查找 # The directory to use for ...
- MySQL复制原理
mysql从3.23开始提供复制功能,复制指将主库的ddl和dml操作通过binlog文件传送到从库上执行,从而保持主库和从库数据同步.mysql支持一台主库同时向多台从库复制,从库同时也可以作为其他 ...
- wampserver 权限配置
当你按照网上以前介绍的wamp配制方法,安装好wamp后.本地的locallhost和127.0.0.1一切都正常,他们都能对你本地的网页文件进行访问.这里说一说,手机借助wamp访问本地文件的方法. ...
- Circular reference 循环引用 第二联系人
A circular reference is a series of references where the last object references the first, resulting ...
- js-之NaN和isNaN
NaN (not is number) 不是一个数字的意思,在js中整型和浮点数都是Number类型. 除此之外,Number还有一个特殊的值,NaN. 一.可能会产生NaN值的情况 1.表达式计算, ...