目标:
1.熟悉元件之间的作用域
2.掌握元件执行顺序
名词解析:
元件:多个类似功能组件的容器统称
组件:实现独立某个功能的统称(类似于函数)
线程组:模拟用户的
配置元件:在测试之前,对测试环境或者数据做一些初始化的准备工作,类似于自动化脚本中的setup
前置处理器:对要发送的这些请求做一些预处理的操作,如参数化
取样器:不同协议实现的组件
后置处理器:对请求的响应做一些处理,收到服务器的响应,把要比较的字段先存下来,再比较
断言:对收到的响应结果与预期结果做一个判断,是否通过
监听器:查看测试脚本运行的记过和日志,类似于自动化脚本中的测试报告
逻辑控制器:控制前后元件的执行顺序
定时器:等待一段时间,类似于自动化脚本中的sleep
测试片段:封装测试功能,不单独执行,需要通过脚本调用才能执行,类似于自动化中某段代码经常被使用,就要封装成一个函数,让所有脚本调用,所以是不能单独运行的
要依靠其他脚本
一、元件的作用域
在Jmeter中,元件的作用域是靠测试计划的树形结构中元件的父子节点关系来确定的
tips:核心是“取样器”,其他组件都是以取样器为核心运行的,组件添加的位置不同,生效的取样器也不同
作用域的原则:
1.取样器:元件不和其他原件相互作用,因此不存在作用域的问题
2.逻辑控制器:元件只对其子节点中取样器和逻辑控制器起作用,不影响父节点
3.其他六大元件:除取样器和逻辑控制器元件外,如果是某个取样器的子节点,则该元件只对其父子节点起作用
4.如果其父节点不是取样器,则其作用域是该元件节点下的其他所有后代节点(包括子节点,子节点的子节点等)、以及对父节点下的所有起作用
二、元件执行顺序
1.配置元件(config elements)
2.前置处理程序(Per-processors)
3.定时器(timer)
4.取样器(Sampler)
5.后置处理程序(Post-processors)
6.断言(Assertions)
7.监听器(Listeners)
tips:1.前置处理器、后置处理器、断言等元件功能对取样器起作用(如果在他们的作用域内没有任何取样器,则不会被执行)
2.如果在同一作用域范围内有多个同一类型的元件,则这些元件按照他们在测试计划中的上下顺序一次执行