如何使用jmeter-maven-plugin写入CSV文件

我在Jmeter上有一个负载测试项目。我使用“ jmeter-maven-plugins”将项目放在应用程序目录旁边。我可以执行测试,但是未编写以下beanshell配置的某些ID:

import java.io.FileWriter;
import java.util.Arrays;
import java.io.Writer;
import java.util.List;

//Default separator
char SEPARATOR = ',';

//function write line in csv
public void writeLine(FileWriter writer,String[] params,char separator)
{
   boolean firstParam = true;

   StringBuilder stringBuilder = new StringBuilder();
   String param = "";

   for (int i = 0; i < params.length; i++)
   {
      //get param
      param = params[i];
      log.info(param);

         //if the first param in the line,separator is not needed
       if (!firstParam) 
       {
           stringBuilder.append(separator);
       }

         //Add param to line
       stringBuilder.append(param);

       firstParam = false;
   }

   //prepare file to next line
   stringBuilder.append("\n");

   //add to file the line
   log.info(stringBuilder.toString());
   writer.append(stringBuilder.toString());

}
if(vars.get("idProcesso_1") != null) {
    //get path of csv file (creates new one if its not exists)
    String csvFile = vars.get("testPlanFileDir") + "/ids.csv"; // for example '/User/Downloads/blabla.csv'

    String[] params = {vars.get("idProcesso_1")};

    FileWriter fileWriter = new FileWriter(csvFile,true);
    writeLine(fileWriter,params,SEPARATOR);

    //proper close to file
    fileWriter.flush();
    fileWriter.close();

    vars.put("idProcesso_1",null);
}

运行测试后,我期望“ ids.csv”文件具有填充线,但是我发现它为空。 Structure of the jmeter files. All "ids.csv" remain empty

jmeter配置文件配置:

<profile>
            <id>jmeter</id>
            <properties>
                <maven.javadoc.skip>true</maven.javadoc.skip>
                <jmeter-tests-dir>${project.build.directory}/jmeter/</jmeter-tests-dir>
                <log-configs>${project.build.directory}/configs/logs/</log-configs>
            </properties>
            <dependencies>
                <dependency>
                    <groupId>br.gov.capes</groupId>
                    <artifactId>capes-servicos-projeto-dependencies</artifactId>
                    <exclusions>
                        <exclusion>
                            <groupId>org.springframework.cloud</groupId>
                            <artifactId>spring-cloud-starter-eureka</artifactId>
                        </exclusion>
                    </exclusions>
                </dependency>
            </dependencies>
            <build>
                <testResources>
                    <testResource>
                        <directory>${project.basedir}/src/test/resources</directory>
                        <filtering>true</filtering>
                        <targetPath>${jmeter-tests-dir}</targetPath>
                        <includes>
                            <include>*.jmx</include>
                            <include>*.csv</include>
                        </includes>
                    </testResource>
                    <testResource>
                        <directory>${project.basedir}/src/test/resources</directory>
                        <filtering>false</filtering>
                        <targetPath>${log-configs}</targetPath>
                        <includes>
                            <include>logback-test.xml</include>
                            <include>application.properties</include>
                        </includes>
                    </testResource>
                </testResources>
                <plugins>
                    <plugin>
                        <groupId>org.apache.maven.plugins</groupId>
                        <artifactId>maven-surefire-plugin</artifactId>
                        <configuration>
                            <skipExec>true</skipExec>
                        </configuration>
                    </plugin>
                    <plugin>
                        <groupId>org.apache.maven.plugins</groupId>
                        <artifactId>maven-failsafe-plugin</artifactId>
                        <configuration>
                            <skipExec>true</skipExec>
                        </configuration>
                    </plugin>
                    <plugin>
                        <groupId>com.lazerycode.jmeter</groupId>
                        <artifactId>jmeter-maven-plugin</artifactId>
                        <executions>
                            <execution>
                                <id>executar-jmeter</id>
                                <phase>integration-test</phase>
                                <goals>
                                    <goal>jmeter</goal>
                                </goals>
                                <configuration>
                                    <generateReports>true</generateReports>
                                </configuration>
                            </execution>
                        </executions>
                    </plugin>
                </plugins>
                <pluginmanagement>
                    <plugins>
                        <plugin>
                            <groupId>com.lazerycode.jmeter</groupId>
                            <artifactId>jmeter-maven-plugin</artifactId>
                            <version>2.9.0</version>
                            <configuration>
                                <jmeterVersion>5.1.1</jmeterVersion>
                                <testFilesDirectory>${jmeter-tests-dir}</testFilesDirectory>
                                <jmeterExtensions>
                                    <artifact>kg.apc:jmeter-plugins-json:2.7</artifact>
                                    <artifact>kg.apc:jmeter-plugins-table-server:2.4</artifact>
                                    <artifact>kg.apc:jmeter-plugins-casutg:2.9</artifact>
                                </jmeterExtensions>
                                <excludedArtifacts>
                                    <exclusion>commons-pool2:commons-pool2</exclusion>
                                    <exclusion>commons-math3:commons-math3</exclusion>
                                    <exclusion>org.slf4j:slf4j-nop</exclusion>
                                    <exclusion>logkit:logkit</exclusion>
                                    <exclusion>avalon-logkit:avalon-logkit</exclusion>
                                    <exclusion>jdom:jdom</exclusion>
                                    <exclusion>log4j:log4j</exclusion>
                                    <exclusion>commons-logging:commons-logging</exclusion>
                                    <exclusion>excalibur-logger:excalibur-logger</exclusion>
                                </excludedArtifacts>
                                <downloadExtensionDependencies>true</downloadExtensionDependencies>
                            </configuration>
                        </plugin>
                    </plugins>
                </pluginmanagement>
            </build>
        </profile>

简而言之,我需要编写beanshell中要求的信息。

yangdebin7 回答:如何使用jmeter-maven-plugin写入CSV文件

暂时没有好的解决方案,如果你有好的解决方案,请发邮件至:iooj@foxmail.com
本文链接:https://www.f2er.com/3158823.html

大家都在问