2 相关元件介绍
2.1测试计划
测试计划元件一般都为JMeter测试树状结构的根部,其界面如图43所示。
图43 测试计划
- 每一个JMeter测试元件都包括名称和注释两部分。名称是给这个元件起的一个名字,默认为元件的类型;注释是解释这个元件的作用,相当于程序中的注释,默认为空。
- 用户定义的变量:在测试计划上可以添加用户定义的变量,相当于全局变量。由于不方便启用和禁用,所以不建议在测试计划上添加变量,而是在用户自定义的变量元件中添加变量。
在测试计划中,关键要理解下面的几个配置,如图44所示。
图44 测试计划的下面配置
- 独立运行每个线程组:用于控制测试计划中的多个线程组的执行顺序。打开本书配套代码testplan.jmx,如图45所示。测试计划中包括两个线程组。如果不勾选“独立运行每个线程组”时,默认各线程组并行、随机执行。如图46,线程组1和线程组2的线程是并行执行的,执行过程线程的执行顺序是不可预料的。
图45建立两个线程组
如果勾选了“独立运行每个线程组”,可以保证线程组1的执行一定在线程组2之前,线程组1执行完毕,才会执行线程组2,即顺序执行各线程组。如图47所示。
线程组中的取样器的执行顺序:默认是从上到下执行。但是“交替控制器”“随机控制器”“随机顺序控制器”和“循环控制器”等元件可以改变取样器的执行顺序。
- 主线程结束后运行tearDown线程组:当线程组停止运行时仍继续运行tearDown线程组,该选项结合线程组的执行配置使用,如图48所示,线程组设置遇到错误立刻停止测试,但是如果在测试计划中勾选了主线程结束后运行tearDown线程组,这样结束以后一定要执行tearDown线程组的,其目的是清理setUp线程组设置的环境,便于执行下一个测试。
图48 线程组设置遇到错误立刻停止测试
- 函数测试模式。如果选中了此选项,同时监听组件如“察看结果树”配置了保存到一个文件中,那么JMeter会将每次的请求结果保存到文件中。一般而言不建议勾选。
- 添加目录或jar包到ClassPath。这个功能最常用于调用外部jar包。当脚本需要调用外部的java文件或jar包时,可以把jar包路径添加到这里,然后在beanshell中直接import进来,并调用jar包中的方法。但是我们一般不建议这样做,如果要使用第三方jar包,建议把这个jar包放入到%JMETER_HOME%\lib\ext目录下。