Jmeter(三十七)循环控制器+交替控制器+事务控制器 完美实现接口字段参数化校验

我们在做接口自动化的时候,常常因为无法灵活的的校验接口字段而烦恼。不能自动校验接口字段的脚本,也就不能称之为接口自动化。因此,我设计了一套组合式的控制器,可以完美的解决这个问题

1:首先我们需要在本地建一个异常字段校验的字符集

比如我这里写了五个校验,分别是最大值,最小值,中文,为空,特殊字符

测试交流群:317765580

2:在线程组下创建一个循环控制器,循环次数设置为三次。循环控制器下建一个交替控制器。交替控制器的作用是交替执行控制器下的元件。交替控制器下属建立三个事务控制器。

最外层的循环控制器执行了三次,那么交替控制器下的三个事务控制器就会依次执行。测试交流群:317765580

3:事务控制器下面单独创建循环控制器,循环次数自由定义,用来读取参数表里面的参数做接口字段校验。假设某个字段有7个特殊场景需要校验,那么我们的循环次数设置为7次

4:在循环控制器下面添加 CSV Data Set Config 用来读取参数字段   测试交流群:317765580

5:添加需要验证的接口,接口名称可以定义为需要check的场景,同样也从参数表获取

6:执行脚本观察结果

你还在为找不到可练习的接口而烦恼吗?现在加入龙渊阁,我们手把手教你搭建属于自己的接口测试环境!

点击这里进入最具活力的测试交流平台

原文地址:https://www.cnblogs.com/Zfc-Cjk/p/10176849.html

时间: 2024-08-11 13:41:22

Jmeter(三十七)循环控制器+交替控制器+事务控制器 完美实现接口字段参数化校验的相关文章

Jmeter(三十)Jmeter Question 之 循环+事务的妙用

先提一个小问题,也是当时在对Jmeter还是懵懂之时,亲身碰到过的一个问题. 真实的业务场景---"登录一次,提交订单N次",当然该处是两个接口. 提现接口是需要判断用户是否在线,换句话说,服务器需要验证其是否登录成功. 登录成功之后,返回Cookie,提交订单接口包含该Cookie一起发送至服务器,才会提现成功. 实现思路: HTTP Cookie管理器 仅一次控制器 登录接口 循环控制器 提现接口 (忽略其中的事务控制器) 该目录结构,实现思想有效解决了前面提到的业务需求. 观察上

集合视图控制器(CollectionViewController) 、 标签控制器(TabBarController) 、 高级控件介绍

  1 创建集合视图,设置相关属性以满足要求 1.1 问题 集合视图控制器UIConllectionViewController是一个展示大量数据的控制器,系统默认管理着一个集合视图UICollectionView,功能几乎和UITableViewController差不多,能够以多行多列的形式展示数据. 集合视图UICollectionView继承至UIScrollView,也同tableView一样有两个协议,分别是UICollectionViewDataSource数据源协议和UIColl

NeHe OpenGL教程 第三十七课:卡通映射

转自[翻译]NeHe OpenGL 教程 前言 声明,此 NeHe OpenGL教程系列文章由51博客yarin翻译(2010-08-19),本博客为转载并稍加整理与修改.对NeHe的OpenGL管线教程的编写,以及yarn的翻译整理表示感谢. NeHe OpenGL第三十七课:卡通映射 卡通映射: 什么是卡通了,一个轮廓加上少量的几种颜色.使用一维纹理映射,你也可以实现这种效果. 看到人们仍然e-mail我请求在文章中使用我方才在GameDev.net上写的源代码,还看到文章的第二版(在那每一

控制器的创建和控制器View的创建

一.控制器的创建 1.第一种创建方式 FCViewController *vc = [[FCViewController alloc] init]; 2.第二种创建方式 // 加载UIStoryboard(注意:仅仅是加载名称叫做Test的storyboard, 并不会创建storyboard中的控制器以及控件) UIStoryboard *storyboard = [UIStoryboard storyboardWithName:@"Test" bundle:nil]; // 创建s

3、三个判断-三个循环

一.三个判断 // 第一种:if else,if,else, // 第二种:三元运算符(三目运算符) // 应用于简单的if else判断 // 第三种:switch case // 应用于不同值情况的判断 // if(条件1){ // 条件1成立执行的代码 // }else if( 条件2){ // 条件2成立执行的代码 // }else if( 条件3){ // 条件3成立执行的代码 // }else{ // 以上都不成立执行的代码 // }; //// if条件语句中可以有> < >

Java三种循环结构的区别

第一种:for循环 循环结构for语句的格式: for(初始化表达式;条件表达式;循环后的操作表达式) { 循环体; } eg: 1 class Dome_For2{ 2 public static void main(String[] args) { 3 //System.out.println("Hello World!"); 4 //求1-10的偶数的和 5 int sum = 0; 6 for (int i = 1;i<=10 ; i++ ) { 7 if (i%2 ==

Java语言----三种循环语句的区别

------- android培训.java培训.期待与您交流! ---------- 第一种:for循环 循环结构for语句的格式: for(初始化表达式;条件表达式;循环后的操作表达式) { 循环体; } eg: 1 class Dome_For2{ 2 public static void main(String[] args) { 3 //System.out.println("Hello World!"); 4 //求1-10的偶数的和 5 int sum = 0; 6 fo

centos shell编程3【告警系统】 第三十七节课

centos shell编程3[告警系统]  第三十七节课 上半节课 下半节课 整个项目没有任何架构,都是单机的,没有服务器端和客户端的概念只是简单调用一下shell脚本,子shell,通过添加更多的shell脚本扩展功能 mail.sh:做邮件收敛uptime或w 获取load average 需要安装php环境yum install -y php 需求: 使用shell定制各种个性化告警工具,但需要统一化管理.规范化管理. 思路:指定一个脚本包,包含主程序.子程序.配置文件.邮件引擎.输出日

UISegmentedControl(分页控制器) AND UISlider(滑块控制器)

- (void)viewDidLoad { [super viewDidLoad]; UIImageView * animatedImageView = [[UIImageView alloc]initWithFrame:CGRectMake(60, 80, 200, 300)]; animatedImageView.backgroundColor = [UIColor redColor]; animatedImageView.tag = 100; [self.view addSubview:a