JMeter GUI - 使用 NewDriver 执行无法查看 Function Helper 对话框
JMeter GUI - execute using NewDriver failed to view Function Helper Dialog
我尝试在 JMeter 中测试一个新功能。
我下载 JMeter 3.3 代码并添加插件,包括 JMeterPluginsCMD
我还下载了 jmeter-plugins-extras-1.4.0.jar 和 HttpSimpleTableControlGui class
我执行打开 JMeter GUI 的 NewDriver,我尝试打开选项 -> 功能助手对话框,但我没有任何功能
日志:
2017-11-13 16:16:56,661 WARN o.a.j.g.u.MenuFactory: Could not instantiate class: org.jmeterplugins.protocol.http.control.gui.HttpSimpleTableControlGui
java.lang.ClassNotFoundException: org.jmeterplugins.protocol.http.control.gui.HttpSimpleTableControlGui
at java.net.URLClassLoader.run(Unknown Source) ~[?:1.8.0_25]
at java.net.URLClassLoader.run(Unknown Source) ~[?:1.8.0_25]
at java.security.AccessController.doPrivileged(Native Method) ~[?:1.8.0_25]
at java.net.URLClassLoader.findClass(Unknown Source) ~[?:1.8.0_25]
at java.lang.ClassLoader.loadClass(Unknown Source) ~[?:1.8.0_25]
at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source) ~[?:1.8.0_25]
at java.lang.ClassLoader.loadClass(Unknown Source) ~[?:1.8.0_25]
at java.lang.Class.forName0(Native Method) ~[?:1.8.0_25]
at java.lang.Class.forName(Unknown Source) ~[?:1.8.0_25]
at org.apache.jmeter.gui.util.MenuFactory.initializeMenus(MenuFactory.java:499) [core/:?]
at org.apache.jmeter.gui.util.MenuFactory.<clinit>(MenuFactory.java:169) [core/:?]
at org.apache.jmeter.control.gui.WorkBenchGui.createPopupMenu(WorkBenchGui.java:119) [core/:?]
at org.apache.jmeter.gui.tree.JMeterTreeNode.createPopupMenu(JMeterTreeNode.java:159) [core/:?]
at org.apache.jmeter.gui.action.EditCommand.doAction(EditCommand.java:46) [core/:?]
at org.apache.jmeter.gui.action.ActionRouter.performAction(ActionRouter.java:88) [core/:?]
at org.apache.jmeter.gui.action.ActionRouter.lambda[=10=](ActionRouter.java:70) [core/:?]
at org.apache.jmeter.gui.action.ActionRouter$$Lambda/1433208870.run(Unknown Source) [core/:?]
at java.awt.event.InvocationEvent.dispatch(Unknown Source) [?:1.8.0_25]
at java.awt.EventQueue.dispatchEventImpl(Unknown Source) [?:1.8.0_25]
at java.awt.EventQueue.access0(Unknown Source) [?:1.8.0_25]
at java.awt.EventQueue.run(Unknown Source) [?:1.8.0_25]
at java.awt.EventQueue.run(Unknown Source) [?:1.8.0_25]
at java.security.AccessController.doPrivileged(Native Method) ~[?:1.8.0_25]
at java.security.ProtectionDomain.doIntersectionPrivilege(Unknown Source) [?:1.8.0_25]
at java.awt.EventQueue.dispatchEvent(Unknown Source) [?:1.8.0_25]
at java.awt.EventDispatchThread.pumpOneEventForFilters(Unknown Source) [?:1.8.0_25]
at java.awt.EventDispatchThread.pumpEventsForFilter(Unknown Source) [?:1.8.0_25]
at java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown Source) [?:1.8.0_25]
at java.awt.EventDispatchThread.pumpEvents(Unknown Source) [?:1.8.0_25]
at java.awt.EventDispatchThread.pumpEvents(Unknown Source) [?:1.8.0_25]
at java.awt.EventDispatchThread.run(Unknown Source) [?:1.8.0_25]
2017-11-13 16:16:59,670 ERROR o.a.j.g.a.ActionRouter: Error processing org.apache.jmeter.gui.action.CreateFunctionDialog@45e37a7e
java.lang.NullPointerException: null
at org.apache.jmeter.functions.gui.FunctionHelper.initParameterPanel(FunctionHelper.java:165) ~[core/:?]
at org.apache.jmeter.functions.gui.FunctionHelper.setVisible(FunctionHelper.java:228) ~[core/:?]
at org.apache.jmeter.gui.action.CreateFunctionDialog.doAction(CreateFunctionDialog.java:50) ~[core/:?]
at org.apache.jmeter.gui.action.ActionRouter.performAction(ActionRouter.java:88) [core/:?]
at org.apache.jmeter.gui.action.ActionRouter.lambda[=10=](ActionRouter.java:70) [core/:?]
at org.apache.jmeter.gui.action.ActionRouter$$Lambda/1433208870.run(Unknown Source) [core/:?]
at java.awt.event.InvocationEvent.dispatch(Unknown Source) [?:1.8.0_25]
at java.awt.EventQueue.dispatchEventImpl(Unknown Source) [?:1.8.0_25]
at java.awt.EventQueue.access0(Unknown Source) [?:1.8.0_25]
at java.awt.EventQueue.run(Unknown Source) [?:1.8.0_25]
at java.awt.EventQueue.run(Unknown Source) [?:1.8.0_25]
at java.security.AccessController.doPrivileged(Native Method) ~[?:1.8.0_25]
at java.security.ProtectionDomain.doIntersectionPrivilege(Unknown Source) [?:1.8.0_25]
at java.awt.EventQueue.dispatchEvent(Unknown Source) [?:1.8.0_25]
at java.awt.EventDispatchThread.pumpOneEventForFilters(Unknown Source) [?:1.8.0_25]
at java.awt.EventDispatchThread.pumpEventsForFilter(Unknown Source) [?:1.8.0_25]
at java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown Source) [?:1.8.0_25]
at java.awt.EventDispatchThread.pumpEvents(Unknown Source) [?:1.8.0_25]
at java.awt.EventDispatchThread.pumpEvents(Unknown Source) [?:1.8.0_25]
at java.awt.EventDispatchThread.run(Unknown Source) [?:1.8.0_25]
- 安装 JMeter 插件并使它们保持最新的推荐方法是使用 JMeter Plugins Manager
- 我确认全新的 JMeter 3.3 和 HTTP Simple Table Server work fine together without any issues with The Function Helper Dialog。
所以我的期望是:
你的安装有问题,你应该有:
jmeter-plugins-table-server-2.2.jar
在 "lib/ext" 文件夹中
jmeter-plugins-cmn-jmeter-0.4.jar
在 "lib" 文件夹中
- 需要重新启动 JMeter 才能拾取任何 .jars
(最有可能)您的函数实现不稳定。如果是这种情况,您将需要连同问题一起提供您的函数代码。
似乎调用 JMeter GUI 的正确(或可能)方式是
ant run_gui
Function Helper 处理了我的更改
我尝试在 JMeter 中测试一个新功能。
我下载 JMeter 3.3 代码并添加插件,包括 JMeterPluginsCMD
我还下载了 jmeter-plugins-extras-1.4.0.jar 和 HttpSimpleTableControlGui class
我执行打开 JMeter GUI 的 NewDriver,我尝试打开选项 -> 功能助手对话框,但我没有任何功能
日志:
2017-11-13 16:16:56,661 WARN o.a.j.g.u.MenuFactory: Could not instantiate class: org.jmeterplugins.protocol.http.control.gui.HttpSimpleTableControlGui
java.lang.ClassNotFoundException: org.jmeterplugins.protocol.http.control.gui.HttpSimpleTableControlGui
at java.net.URLClassLoader.run(Unknown Source) ~[?:1.8.0_25]
at java.net.URLClassLoader.run(Unknown Source) ~[?:1.8.0_25]
at java.security.AccessController.doPrivileged(Native Method) ~[?:1.8.0_25]
at java.net.URLClassLoader.findClass(Unknown Source) ~[?:1.8.0_25]
at java.lang.ClassLoader.loadClass(Unknown Source) ~[?:1.8.0_25]
at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source) ~[?:1.8.0_25]
at java.lang.ClassLoader.loadClass(Unknown Source) ~[?:1.8.0_25]
at java.lang.Class.forName0(Native Method) ~[?:1.8.0_25]
at java.lang.Class.forName(Unknown Source) ~[?:1.8.0_25]
at org.apache.jmeter.gui.util.MenuFactory.initializeMenus(MenuFactory.java:499) [core/:?]
at org.apache.jmeter.gui.util.MenuFactory.<clinit>(MenuFactory.java:169) [core/:?]
at org.apache.jmeter.control.gui.WorkBenchGui.createPopupMenu(WorkBenchGui.java:119) [core/:?]
at org.apache.jmeter.gui.tree.JMeterTreeNode.createPopupMenu(JMeterTreeNode.java:159) [core/:?]
at org.apache.jmeter.gui.action.EditCommand.doAction(EditCommand.java:46) [core/:?]
at org.apache.jmeter.gui.action.ActionRouter.performAction(ActionRouter.java:88) [core/:?]
at org.apache.jmeter.gui.action.ActionRouter.lambda[=10=](ActionRouter.java:70) [core/:?]
at org.apache.jmeter.gui.action.ActionRouter$$Lambda/1433208870.run(Unknown Source) [core/:?]
at java.awt.event.InvocationEvent.dispatch(Unknown Source) [?:1.8.0_25]
at java.awt.EventQueue.dispatchEventImpl(Unknown Source) [?:1.8.0_25]
at java.awt.EventQueue.access0(Unknown Source) [?:1.8.0_25]
at java.awt.EventQueue.run(Unknown Source) [?:1.8.0_25]
at java.awt.EventQueue.run(Unknown Source) [?:1.8.0_25]
at java.security.AccessController.doPrivileged(Native Method) ~[?:1.8.0_25]
at java.security.ProtectionDomain.doIntersectionPrivilege(Unknown Source) [?:1.8.0_25]
at java.awt.EventQueue.dispatchEvent(Unknown Source) [?:1.8.0_25]
at java.awt.EventDispatchThread.pumpOneEventForFilters(Unknown Source) [?:1.8.0_25]
at java.awt.EventDispatchThread.pumpEventsForFilter(Unknown Source) [?:1.8.0_25]
at java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown Source) [?:1.8.0_25]
at java.awt.EventDispatchThread.pumpEvents(Unknown Source) [?:1.8.0_25]
at java.awt.EventDispatchThread.pumpEvents(Unknown Source) [?:1.8.0_25]
at java.awt.EventDispatchThread.run(Unknown Source) [?:1.8.0_25]
2017-11-13 16:16:59,670 ERROR o.a.j.g.a.ActionRouter: Error processing org.apache.jmeter.gui.action.CreateFunctionDialog@45e37a7e
java.lang.NullPointerException: null
at org.apache.jmeter.functions.gui.FunctionHelper.initParameterPanel(FunctionHelper.java:165) ~[core/:?]
at org.apache.jmeter.functions.gui.FunctionHelper.setVisible(FunctionHelper.java:228) ~[core/:?]
at org.apache.jmeter.gui.action.CreateFunctionDialog.doAction(CreateFunctionDialog.java:50) ~[core/:?]
at org.apache.jmeter.gui.action.ActionRouter.performAction(ActionRouter.java:88) [core/:?]
at org.apache.jmeter.gui.action.ActionRouter.lambda[=10=](ActionRouter.java:70) [core/:?]
at org.apache.jmeter.gui.action.ActionRouter$$Lambda/1433208870.run(Unknown Source) [core/:?]
at java.awt.event.InvocationEvent.dispatch(Unknown Source) [?:1.8.0_25]
at java.awt.EventQueue.dispatchEventImpl(Unknown Source) [?:1.8.0_25]
at java.awt.EventQueue.access0(Unknown Source) [?:1.8.0_25]
at java.awt.EventQueue.run(Unknown Source) [?:1.8.0_25]
at java.awt.EventQueue.run(Unknown Source) [?:1.8.0_25]
at java.security.AccessController.doPrivileged(Native Method) ~[?:1.8.0_25]
at java.security.ProtectionDomain.doIntersectionPrivilege(Unknown Source) [?:1.8.0_25]
at java.awt.EventQueue.dispatchEvent(Unknown Source) [?:1.8.0_25]
at java.awt.EventDispatchThread.pumpOneEventForFilters(Unknown Source) [?:1.8.0_25]
at java.awt.EventDispatchThread.pumpEventsForFilter(Unknown Source) [?:1.8.0_25]
at java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown Source) [?:1.8.0_25]
at java.awt.EventDispatchThread.pumpEvents(Unknown Source) [?:1.8.0_25]
at java.awt.EventDispatchThread.pumpEvents(Unknown Source) [?:1.8.0_25]
at java.awt.EventDispatchThread.run(Unknown Source) [?:1.8.0_25]
- 安装 JMeter 插件并使它们保持最新的推荐方法是使用 JMeter Plugins Manager
- 我确认全新的 JMeter 3.3 和 HTTP Simple Table Server work fine together without any issues with The Function Helper Dialog。
所以我的期望是:
你的安装有问题,你应该有:
jmeter-plugins-table-server-2.2.jar
在 "lib/ext" 文件夹中jmeter-plugins-cmn-jmeter-0.4.jar
在 "lib" 文件夹中- 需要重新启动 JMeter 才能拾取任何 .jars
(最有可能)您的函数实现不稳定。如果是这种情况,您将需要连同问题一起提供您的函数代码。
似乎调用 JMeter GUI 的正确(或可能)方式是
ant run_gui
Function Helper 处理了我的更改