jemter的简单控制器和模块控制器的灵活运用

简单控制器和模块控制器的灵活运用

前言:

在使用jemter进行接口测试时,接口的高复用性和易维护性是接口测试中追求的方向。

平时jemter进行接口测试常见的问题有

1)常规的线程组中加入http取样器进行接口测试时,当开发更改了接口的入参校验,所有的http请求都需要重新更改入参,当http取样器很多时,修改入参成了一个负担;
2)在编写一个业务线的接口回归脚本时,会出现某个接口的重复调用,单纯的使用http取样器需要增加多个取样器。

解决方案

就是通过简单控制器将接口当个封装,然后通过模块控制器去调用简单控制器,整体样式如下:
jemter的简单控制器和模块控制器的灵活运用
蓝框内为脚本通用配置;
绿框为测试片段,内部包揽了所有的被简单控制器封装起来的单接口
红框为业务线线程,一个线程表示一条或者多条业务线
黄框内为单个业务线线程的内容

解析

篮框各个配置元件的解析

用户自定义的变量为全局变量,该脚本内的所有变量的最外层值;
http信息头管理器为最外层的的信息头管理,当有特殊的信息头需要管理时,可以在需要的http取样器下挂载一个新的http信息头管理器;
jemter的简单控制器和模块控制器的灵活运用

HTTP Cookie管理器: 功能为改脚本的所有cookie进行管理,例如,登录完成以后,保持登录
JSR223 预处理程序: 通过js脚本语言获取当前的时间戳为变量,常用于不可重名的变量命名
jemter的简单控制器和模块控制器的灵活运用
BeanShell 预处理程序: 是小型的嵌入式java的解释器,可以在改元件内输入java语法,并执行
jemter的简单控制器和模块控制器的灵活运用

绿框各个配置元件的解析

jemter的简单控制器和模块控制器的灵活运用
**测试片段:**创建一个测试片段,用于挂载简单控制器,和线程组平级,但是需要和模块控制器一起才能被使用
jemter的简单控制器和模块控制器的灵活运用
简单控制器: 控制器内部可以添加http取样器,实现单接口的封装
jemter的简单控制器和模块控制器的灵活运用
http取样器 接口请求的主体
jemter的简单控制器和模块控制器的灵活运用
正则表达式
jemter的简单控制器和模块控制器的灵活运用
断言
jemter的简单控制器和模块控制器的灵活运用

黄框各个配置元件的解析

jemter的简单控制器和模块控制器的灵活运用
用户参数 用户参数是该业务线所有的请求需要用的变量,变量的命名规则尽量不会重复,博主使用的方法就是接口的一段路径+入参名
jemter的简单控制器和模块控制器的灵活运用
BeanShell 取样器 可以在取样器中直接写java脚本,也可以导入java脚本,class脚本,jar包等
jemter的简单控制器和模块控制器的灵活运用
模块控制器 通过模块控制器,调用简单控制器
jemter的简单控制器和模块控制器的灵活运用

整体框架的一个解析基本讲完了,下面来看执行效果

执行效果

jemter的简单控制器和模块控制器的灵活运用