JMeter插件的调试

概述

本文介绍了如何在JMeter中调试插件,以方便在开发过程中了解代码的执行过程,提高开发效率。

问题描述

JMeter插件的开发过程中可能需要对写的代码进行调试,一种调试方法是跟JMeter的源代码放在一起进行调试(如果读者想设置JMeter的开发环境,可以参考xmeter君写的这篇文章),但是这种方法的缺点是需要将整个JMeter的源代码都放在工作空间,这对于有的时候只是开发一个小的插件过程来说非常重。这里xmeter君将为大家介绍利用Java远程调试的方法来调试自己写的插件,这么做的好处是避免跟整个JMeter的源代码放在一起,保持在开发插件过程中使用比较轻量的方式来开发、调试JMeter插件(关于开发JMeter插件,可以参考xmeter君的这篇文章)。

过程

插件的源代码在集成开发环境中写好之后,将其编译成二进制JAR文件,放入$JMETER_HOME/lib/ext目录下,然后启动JMeter之后就会发现新开发的插件。为了能够支持JMeter的远程调试,我们先需要改一下启动JMeter的JVM参数。

1)用一个文本编辑器打开$JMETER_HOME/bin/jmeter.sh (或者jmeter.bat)。

2)在文件jmeter.sh中加入一行(注意:该行必须在执行JMeter的JAR之前),该配置的意思是在端口2345上开启了远程调试的功能

JVM_ARGS="-Xdebug -Xnoagent -Djava.compiler=NONE -Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=2345”

3)重启JMeter,如果配置得对的话,在JMeter启动的控制台上会打印出类似于下列的语句。

Listening for transport dt_socket at address: 2345

4)切换到Eclipse的工作空间,选中开发插件的那个项目,然后打开“调试配置(Debug Configuration)”,选中“Remote Java Application” > 右击 > New,新建一个远程调试配置,如下图所示,配置好JMeter运行所在的机器的IP地址和端口号,如下填的是本地的2345端口


5)配置好之后,点击上图对话框中的Debug按钮,然后在Debug透视图中能看到类似于如下截图的内容,表明端口上attach已经成功。


6)在要调试的代码中打好断点,运行JMeter之后就可以看到相关的调试信息,如下所示。


总结

利用Java提供的远程调试的功能对Meter插件进行调试,比较方便地掌握JMeter插件在实际运行过程中的状况,更好地帮助开发人员完成插件的开发。但是这种方式有个缺点是在开发过程中,需要不断地将JMeter插件打包,复制和重启JMeter,重启JMeter完成后,还需要重新attach Eclipse的调试进程,如果调试过程中频繁改动代码的话,这种方式稍显麻烦。读者可以根据自己的实际情况酌情处理。

©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 159,015评论 4 362
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 67,262评论 1 292
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 108,727评论 0 243
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 43,986评论 0 205
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 52,363评论 3 287
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 40,610评论 1 219
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 31,871评论 2 312
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 30,582评论 0 198
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 34,297评论 1 242
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 30,551评论 2 246
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 32,053评论 1 260
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 28,385评论 2 253
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 33,035评论 3 236
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 26,079评论 0 8
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 26,841评论 0 195
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 35,648评论 2 274
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 35,550评论 2 270

推荐阅读更多精彩内容

  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 134,100评论 18 139
  • Android 自定义View的各种姿势1 Activity的显示之ViewRootImpl详解 Activity...
    passiontim阅读 170,569评论 25 707
  • Spring Boot 参考指南 介绍 转载自:https://www.gitbook.com/book/qbgb...
    毛宇鹏阅读 46,360评论 6 343
  • 在使用Jmeter进行接口的性能测试时,由于Jmeter 是JAVA应用,对于CPU和内存的消耗比较大,所以,当需...
    燕京博士阅读 4,086评论 0 16
  • 此是傀儡师被擒至山洞的第二日。 哑女的笛声低而暗涩,挤缩身旁的孩子垂着眼,怯怯直瞪着地下,半张着小口,生生挤出了那...
    古池笑月阅读 717评论 3 7