首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何生成和保存到文件SummaryReport或任何其他JMeter报告

如何生成和保存到文件SummaryReport或任何其他JMeter报告
EN

Stack Overflow用户
提问于 2014-07-25 14:25:51
回答 1查看 2.4K关注 0票数 0

我创建了简单的JMeter测试,我不知道如何生成某种JMeter报告(汇总报告,查看表e.t.c中的结果)并将其保存到某个文件中。

我的代码如下所示:公共类JMeterTest扩展BaseScenario{

代码语言:javascript
复制
protected void scenario() throws Exception { 
    // Engine 
    StandardJMeterEngine jm = new StandardJMeterEngine(); 
    // jmeter.properties 
    JMeterUtils.loadJMeterProperties("D:/Java Tools/JMeter/apache-jmeter-2.11/apache-jmeter-2.11/bin/jmeter.properties"); 

    HashTree hashTree = new HashTree(); 

    // HTTP Sampler 
    HTTPSampler httpSampler = new HTTPSampler(); 
    httpSampler.setDomain("192.168.67.98"); 
    httpSampler.setPort(8080); 
    httpSampler.setPath("/gks-server"); 
    httpSampler.setMethod("GET"); 

    // Loop Controller 
    TestElement loopCtrl = new LoopController(); 
    ((LoopController)loopCtrl).setLoops(1); 
    ((LoopController)loopCtrl).addTestElement(httpSampler); 
    ((LoopController)loopCtrl).setFirst(true); 

    // Thread Group 
    SetupThreadGroup threadGroup = new SetupThreadGroup(); 
    threadGroup.setNumThreads(1); 
    threadGroup.setRampUp(1); 
    threadGroup.setSamplerController((LoopController)loopCtrl); 

    TestPlan testPlan = new TestPlan("MY TEST PLAN"); 
    testPlan.setTestPlanClasspath("D:/JMeterTestPlan/test.jmx"); 

    hashTree.add("testPlan", testPlan); 
    hashTree.add("loopCtrl", loopCtrl); 
    hashTree.add("threadGroup", threadGroup); 
    hashTree.add("httpSampler", httpSampler); 

    jm.configure(hashTree); 

    //Run TEST 
    jm.run(); 
} 

}

请帮帮我!致以最好的问候!

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2014-07-28 08:48:07

jm.run()语句之前添加以下几行:

代码语言:javascript
复制
Summariser summer = null;
String summariserName = JMeterUtils.getPropDefault("summariser.name", "summary");//$NON-NLS-1$
if (summariserName.length() > 0) {
    summer = new Summariser(summariserName);
}

String logFile = "/path/to/output/file.jtl";
ResultCollector logger = new ResultCollector(summer);
logger.setFilename(logFile);
hashTree.add(hashTree.getArray()[0], logger);

所有输出将以CSV格式转到/path/to/output/file.jtl。您可以在jmeter.properties安装的/bin文件夹中查看JMeter文件,以确定需要哪些“有趣的”值,并适当地覆盖它们。

可供选择的办法有:

代码语言:javascript
复制
jmeter.save.saveservice.output_format=csv
jmeter.save.saveservice.assertion_results_failure_message=false
jmeter.save.saveservice.assertion_results=none
jmeter.save.saveservice.data_type=true
jmeter.save.saveservice.label=true
jmeter.save.saveservice.response_code=true
jmeter.save.saveservice.response_data=false
jmeter.save.saveservice.response_data.on_error=false
jmeter.save.saveservice.response_message=true
jmeter.save.saveservice.successful=true
jmeter.save.saveservice.thread_name=true
jmeter.save.saveservice.time=true
jmeter.save.saveservice.subresults=true
jmeter.save.saveservice.assertions=true
jmeter.save.saveservice.latency=true
jmeter.save.saveservice.samplerData=false
jmeter.save.saveservice.responseHeaders=false
jmeter.save.saveservice.requestHeaders=false
jmeter.save.saveservice.encoding=false
jmeter.save.saveservice.bytes=true
jmeter.save.saveservice.url=false
jmeter.save.saveservice.filename=false
jmeter.save.saveservice.hostname=false
jmeter.save.saveservice.thread_counts=false
jmeter.save.saveservice.sample_count=false
jmeter.save.saveservice.idle_time=false
jmeter.save.saveservice.timestamp_format=ms
jmeter.save.saveservice.timestamp_format=yyyy/MM/dd HH:mm:ss.SSS
jmeter.save.saveservice.default_delimiter=,
jmeter.save.saveservice.default_delimiter=\t
jmeter.save.saveservice.print_field_names=false
jmeter.save.saveservice.xml_pi=<?xml-stylesheet type="text/xsl" href="../extras/jmeter-results-detail-report_21.xsl"?>
jmeter.save.saveservice.base_prefix=~/
jmeter.save.saveservice.autoflush=false

有关如何从5种不用JMeter GUI启动JMeter测试的方法代码运行JMeter测试的详细信息,请参阅JMeter指南。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/24958035

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档