我正在尝试使用以下命令执行JMeter测试用例。在没有在本地安装JMeter的情况下,我是否有另一种方法来执行测试用例?在这里,我必须为JMeterUtils提供JMeter HOME路径。
// JMeter Engine
StandardJMeterEngine jmeter = new StandardJMeterEngine();
// Initialize Properties, logging, locale, etc.
JMeterUtils.loadJMeterProperties("/path/to/your/jmeter/bin/jmeter.properties");
JMeterUtils.setJMeterHome("/path/to/your/jmeter");
JMeterUtils.initLogging();// you can comment this line out to see extra log messages of i.e. DEBUG level
JMeterUtils.initLocale();
// Initialize JMeter SaveService
SaveService.loadProperties();
// Load existing .jmx Test Plan
FileInputStream in = new FileInputStream("/path/to/your/jmeter/extras/Test.jmx");
HashTree testPlanTree = SaveService.loadTree(in);
in.close();
// Run JMeter Test
jmeter.configure(testPlanTree);
jmeter.run();
}
resorce https://www.blazemeter.com/blog/5-ways-launch-jmeter-test-without-using-jmeter-gui
答案 0 :(得分:1)
您实际上不需要在您设置的主目录中安装完整的JMeter。只是属性文件就足够了。在JMeter主目录(或子目录)中,您可以放置任何其他属性文件,如saveservice.properties,user.properties等。这些通常由jmeter.property文件中的相对路径引用。这就是为什么你需要一个主目录......
因此,从java运行测试计划不需要本地安装。您只需要存在属性文件。通过设置JMeterHome,您只需告诉JMeter在哪里查找jmeter.properties文件中指定的其他属性文件。
对于一个工作项目,我建议调查一下:
https://bitbucket.org/blazemeter/jmeter-from-code/
希望这有帮助。
答案 1 :(得分:0)
最好包括多个用户是否将在其本地系统上运行此应用程序。我使用了类似的方法
String JmeterPropertiesFilePath = System.getProperty("user.dir").toString()
+ "/folder/apache-jmeter-5.0/bin/jmeter.properties";
String JmeterHomePath = System.getProperty("user.dir").toString()
+ "/folder/apache-jmeter-5.0/";