在写JMeter脚本的时候经常需要“调试”脚本,比如,
- 使用了某后置处理器(Post Processcors)抽取变量,然后需要知道抽取出的变量都有哪些,这些变量的值是什么
- 抽取表达式的测试,包括测试数据的准备和表达式的验证
- BeanShell脚本的调试
调试执行过程中变量内容
如下图所示,Debug Sampler中打印出来的各个变量的名称,以及对应的值。
调试正则表达式
正则表达式在编写脚本的过程中会经常被用到,那么如何在JMeter中调试写好的正则表达式呢?在“结果查看树”中,提供了一个测试正则表达式的地方,如下图所示,选择“RegExp Tester”,
“Response data”视图会被切换成“RegExp Tester”,如下图所示,在“Regular expression”输入框中输入你想测试的表达式,点击“Test”按钮,就可以对正则表达式进行测试,在下面的文本列表框中显示的就是正则表达式的运行结果。与之类似,JMeter还提供了“CSS/JQuery Tester”,“JSON Path Tester”等,利用这个工具可以对返回的内容进行相应表达式的测试。
模拟数据的生成
BeanShell脚本调试
在利用BeanShell进行开发脚本的过程中,有的时候需要对脚本的变量打印出来进行查看。如下图所示,可以使用两种办法,一个是通过JMeter内置的log对象提供的方法info,通过该方法打印出来的日志会显示在JMeter的日志中,在IDE中如下所示,该日志也会打印在 “-j”参数指定的日志文件中。另外一种是打印到控制台,通过System.out.println,如下图所示打印的“world”。
综上所述,JMeter提供了一些用于在脚本开发、运行过程中的一些调试手段,可以让使用者非常方便的了解脚本的执行情况,熟练掌握这些技能对加速脚本的开发过程大有裨益。