如何在 jmeter-maven-plugin 中更改结果文件名(jtl 文件)?

How to change result file name (of jtl file) in jmeter-maven-plugin?

我用jmeter-maven-plugin (version 1.10.0)来运行JMeter测试。我想更改结果文件的默认名称,所以我想更改 option -l (logfile) 的参数:

    [debug] JMeter is called with the following command line arguments: -n 
    -t C:\XX\JMeter\src\test\jmeter\some-test.jmx 
    -l C:\XX\JMeter\target\jmeter\results150323-some-test.jtl 
    -d C:\XX\JMeter\target\jmeter 
    -j C:\XX\JMeter\target\jmeter\logs\some-test.jmx.log

已编辑: 我从 IntelliJ 运行 使用:mvn integration-test -P运行-some-test

我定义了两个配置文件(用于两个不同的测试文件):

<profile>
    <id>run-some-test</id>
    <build>
        <plugins>
            <plugin>
                <groupId>com.lazerycode.jmeter</groupId>
                <artifactId>jmeter-maven-plugin</artifactId>
                <executions>
                    <execution>
                        <phase>integration-test</phase>
                        <goals>
                            <goal>jmeter</goal>
                        </goals>
                        <configuration>
                            <testFilesIncluded>
                                <jMeterTestFile>some-test.jmx</jMeterTestFile>
                            </testFilesIncluded>
                        </configuration>
                    </execution>
                </executions>
            </plugin>
        </plugins>
    </build>
</profile>
<profile>
    <id>run-another-test</id>
    <build>
            <plugins>
                <plugin>
                <groupId>com.lazerycode.jmeter</groupId>
                <artifactId>jmeter-maven-plugin</artifactId>
                <executions>
                    <execution>
                        <phase>integration-test</phase>
                        <goals>
                            <goal>jmeter</goal>
                        </goals>
                        <configuration>
                            <testFilesIncluded>
                                <jMeterTestFile>another-test.jmx</jMeterTestFile>
                            </testFilesIncluded>
                        </configuration>
                    </execution>
                </executions>
            </plugin>
        </plugins>
    </build>
</profile>

你不能。

测试名称用于创建日志名称。例如,如果您的测试名称是:

some-test.jmx

您的日志名称将始终为:

some-test.log

您无法更改日志名称的原因是 块中指定的每个 实际上在内部用作 REGEX。普通文件名(如您在上面指定的那样)是有效的正则表达式,这就是它起作用的原因。

由于每个 都是一个正则表达式,我们不知道它将包含多少个文件 return 因此我们无法在 之间建立一对一的映射和一个日志文件。

为了简单起见并防止出现问题,我们硬编码了上面指定的日志文件名。