简体   繁体   English

使用程序(JAVA 代码)运行 Jmeter 测试后如何保存结果集?

[英]How can I save a result set after running the Jmeter Test using a program (JAVA CODE)?

I have run the Jmeter Script using Jmeter dependency in eclipse using Java code, fortunately, my script is running fine but now I'm unable to store the result for the same.我已经使用 Java 代码在 eclipse 中使用 Jmeter 依赖项运行 Jmeter 脚本,幸运的是,我的脚本运行良好,但现在我无法存储相同的结果。 Can anyone please tell me how can I achieve this?谁能告诉我如何实现这一目标? please see the following code that I have tried.请查看我尝试过的以下代码。

package com.solitera.automation.controller;

import org.apache.jmeter.engine.StandardJMeterEngine;
import org.apache.jmeter.save.SaveService;
import org.apache.jmeter.util.JMeterUtils;
import org.apache.jorphan.collections.HashTree;

import java.io.File;
import java.io.FileInputStream;

public class JMeterFromExistingJMX {

    public static void main(String[] argv) throws Exception {
        // JMeter Engine
        StandardJMeterEngine jmeter = new StandardJMeterEngine();


        // Initialize Properties, logging, locale, etc.
        JMeterUtils.loadJMeterProperties("D:/apache-jmeter-5.1.1/bin/jmeter.properties");
        JMeterUtils.setJMeterHome("D:/apache-jmeter-5.1.1");
        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("D:/Ecllipse_project_workspace2/slt_automation/src/test/jmeter/slt_autoMa_Test.jmx");
        HashTree testPlanTree = SaveService.loadTree(in);
        in.close();*/

        HashTree testPlanTree = SaveService.loadTree(new File("D:/apache-jmeter-5.1.1/extras/slt_auto_test_java_blaze_script.jmx"));

        // Run JMeter Test
        jmeter.configure(testPlanTree);
        jmeter.run();
    }


}

I have solved it by myself..我自己解决了。。

if (summariserName.length() > 0) {  
    summer = new Summariser(summariserName);  
  }  

  String logFile = "D:/apache-jmeter-5.1.1/extras/resultss.xml";
  ResultCollector logger = new ResultCollector(summer);  
  logger.setFilename(logFile);
  testPlanTree.add(testPlanTree.getArray()[0], logger); 

You need to add a ResultCollector instance to your Test Plan in order to get the.jtl file written like:您需要将ResultCollector实例添加到您的测试计划中,以便将 .jtl 文件编写为:

ResultCollector collector = new ResultCollector();
collector.setFilename("result.jtl");
testPlanTree.add(testPlanTree.getArray()[0], collector);

the code needs to be added before the jmeter.configure(testPlanTree);需要在jmeter.configure(testPlanTree);之前添加代码line线

More information:更多信息:

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

相关问题 如何通过使用程序(Java 代码)运行 Jmeter 测试在 Java 代码中设置 CSV 文件? - How to set CSV file in java code by running the Jmeter test using a program (Java Code)? 通过程序运行 Jmeter 测试后,结果不会与列名一起存储在 CSV 文件中(Java 代码) - Results are not stored with a column names in CSV file after running the Jmeter test through a program (Java Code) 如何通过使用JMeter API从JAVA类获取Jmeter测试结果 - how to get Jmeter test result from JAVA Class by using JMeter API 从 java 代码运行 JMeter 负载测试后获取汇总汇总值 - Get aggregate summary values after running JMeter load test from java code 如何在不使用命令行运行JMeter的情况下以编程方式设置代理设置 - How can I set proxy settings programatically for JMeter without running it using command line 使用 JMeter JMX 脚本使用 Java 代码运行测试片段时出现问题 - Problem in running Test Fragment using JMeter JMX script using Java code 使用 JMeter 测试 Java 代码 - Test java code with JMeter Java:如何测试保存方法? - Java : How can I test save method? jmeter - 如何存储来自第一个请求的数据并使用 java 代码将其传递给第二个请求 - jmeter - How can I store data from first request and pass it to second request using java code 从Java运行Jmeter测试时,不使用属性 - When Running Jmeter test from java its not using the properties
 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM