我已经设置了一个扩展AbstractJavaSamplerClient
的类,其中包含setupTest
,runTest
和getDefaultParameters
方法,所有这些都是根据jMeter的模板和在线示例编写的
添加了记录器,尝试正常设置(LoggingManager.getLoggerForClass();
)并使用超级(super.getLogger();
)并添加了多个Logger.info
和Logger.error
我使用Java request
并且给包含我的类的Jar已经使用类路径完成了user.properties
。运行测试时选择了正确的类。
运行测试时,不会显示自定义日志。也没有错误。而且我得到了这个:
2016/02/03 13:34:42 INFO - jmeter.engine.StandardJMeterEngine: Running the test!
2016/02/03 13:34:42 INFO - jmeter.samplers.SampleEvent: List of sample_variables: []
2016/02/03 13:34:42 INFO - jmeter.gui.util.JMeterMenuBar: setRunning(true,*local*)
2016/02/03 13:34:42 INFO - jmeter.engine.StandardJMeterEngine: Starting ThreadGroup: 1 : Group Test
2016/02/03 13:34:42 INFO - jmeter.engine.StandardJMeterEngine: Starting 1 threads for group Group Test.
2016/02/03 13:34:42 INFO - jmeter.engine.StandardJMeterEngine: Thread will start next loop on error
2016/02/03 13:34:42 INFO - jmeter.threads.ThreadGroup: Starting thread group number 1 threads 1 ramp-up 1 perThread 1000.0 delayedStart=false
2016/02/03 13:34:42 INFO - jmeter.threads.ThreadGroup: Started thread group number 1
2016/02/03 13:34:42 INFO - jmeter.engine.StandardJMeterEngine: All thread groups have been started
2016/02/03 13:34:42 INFO - jmeter.threads.JMeterThread: Thread started: Group Test 1-1
2016/02/03 13:34:42 INFO - jmeter.threads.JMeterThread: Thread is done: Group Test 1-1
2016/02/03 13:34:42 INFO - jmeter.threads.JMeterThread: Thread finished: Group Test 1-1
2016/02/03 13:34:42 INFO - jmeter.engine.StandardJMeterEngine: Notifying test listeners of end of test
2016/02/03 13:34:42 INFO - jmeter.gui.util.JMeterMenuBar: setRunning(false,*local*)
我已检查过user.properties并将日志写入jmeter.log
我觉得我的班级甚至没有经过测试,因为日志旁边没有显示任何内容"开始/完成/ Finshed线程"。
当我添加结果树或任何其他结果线程时,它保持为空。
这里可能出现什么问题?
编辑: 没有使用正确的JAVa请求(配置>默认Java请求!=单个Java请求)。从那时起,我看到我的Jonas有一个错误,因此没有连接和解释不存在的结果。
答案 0 :(得分:0)
根据WebSocket Testing With Apache JMeter文章中提供的示例:
必要的进口商品:
import org.apache.jorphan.logging.LoggingManager;
import org.apache.log.Logger;
初始化:
private static final Logger log = LoggingManager.getLoggerForClass();
用法:
log.info("your log message");
log.error("your error message", exception);