我正在尝试使用Maven插件为JMeter测试设置属性。我从this question的答案中按照pom.xml
文件中的建议设置进行了操作,但是在运行测试时我的属性没有被提取。
pom.xml
的相关部分:
<profiles>
<profile>
<id>jmeter-test</id>
<build>
<plugins>
<plugin>
<groupId>com.lazerycode.jmeter</groupId>
<artifactId>jmeter-maven-plugin</artifactId>
<version>2.0.3</version>
<executions>
<execution>
<id>jmeter-tests</id>
<goals>
<goal>jmeter</goal>
</goals>
<configuration>
<propertiesUser>
<threadCount>5</threadCount>
<environment>test</environment>
</propertiesUser>
<testResultsTimestamp>false</testResultsTimestamp>
<proxyConfig>
<host>localhost</host>
<port>8888</port>
</proxyConfig>
</configuration>
</execution>
</executions>
</plugin>
</plugins>
</build>
</profile>
</profiles>
我正在尝试使用:${__P(threadCount)}
和${__P(environment)}
访问我的JMeter测试中的变量。
运行时,我正在使用
mvn clean verify -Pjmeter-tests
我可以看到正在从输出中选择和使用代理配置:
[INFO] -------------------------------------------------------
[INFO] P E R F O R M A N C E T E S T S
[INFO] -------------------------------------------------------
[INFO] Invalid value detected for <postTestPauseInSeconds>. Setting pause to 0...
[INFO]
[INFO] Proxy Details:
Host: localhost:8888
[INFO]
[INFO] Executing test: JMeterTests.jmx
不幸的是,propertiesUser
值未被使用。我也可以使用命令行运行器,它按预期工作:
jmeter -n -t JMeterTests.jmx -Jenvironment=test -JthreadCount=5
关于为什么这不起作用的任何想法?
更多信息:
我一直在使用example project进行测试,看到预期的行为是<propertiesUser>
下的配置应该填充文件target/jmeter/bin/user.properties
。这没有发生,根本没有创建文件。
答案 0 :(得分:0)
请参阅此常见问题:
https://github.com/jmeter-maven-plugin/jmeter-maven-plugin/wiki/FAQ
将配置移到执行块之外可以解决您的问题:
<profiles>
<profile>
<id>jmeter-test</id>
<build>
<plugins>
<plugin>
<groupId>com.lazerycode.jmeter</groupId>
<artifactId>jmeter-maven-plugin</artifactId>
<version>2.0.3</version>
<executions>
<execution>
<id>jmeter-tests</id>
<goals>
<goal>jmeter</goal>
</goals>
</execution>
</executions>
<configuration>
<propertiesUser>
<threadCount>5</threadCount>
<environment>test</environment>
</propertiesUser>
<testResultsTimestamp>false</testResultsTimestamp>
<proxyConfig>
<host>localhost</host>
<port>8888</port>
</proxyConfig>
</configuration>
</plugin>
</plugins>
</build>
</profile>
</profiles>