通过命令行使用 JMet 版本 3.3 和 JMet Maven 插件 2.6.0 的连接被拒绝错误,但适用于 GUI



我是jmeter的普通用户。在最终决定在这里发布之前,我搜索了很多错误。我确实检查了 github 站点的 jmeter-mvn-插件,我无法将我的问题与未解决的问题或已修复的问题联系起来(这可能是由于我对 jmeter 或 maven :) 缺乏了解)

我正在使用jmeter 3.3和最新的jmeter-maven-plugin 2.6.0。我有一个 https 请求,我想用它进行性能测试。我在jmeter 2.3上有测试计划,并且在较旧的1.x版本jmeter-maven-plugin上工作得很好。当我在命令行上运行时,升级 jmeter 和 jmeter maven 插件后,相同的测试计划不起作用。我在 jmeter3.3 上再次创建了相同的计划,因为有人建议"我无法使用 jmeter2.3 运行在 jmeter3.3 上创建的测试计划(詹金斯现在有 3.3),但没有成功。它在 gui 模式下工作得很好。

我的设置是使用 Maven 通过 Jenkins 运行 JMet 测试计划。目前我什至无法通过命令行使其在本地工作。

我确实尝试降级,即使jmeter-maven-plugin除了最新版本之外并不真正支持任何其他内容。 降级到2.0.3插件和jmeter 3.0,但仍然没有运气。

我看到两个需要帮助的问题:

1)我被拒绝连接,我已经缩小了范围以请求https与http。常规 http 请求工作正常

<httpSample t="295" it="0" lt="0" ts="1516377023875" s="false" lb="HTTP Request" rc="**Non HTTP response code: java.net.ConnectException" rm="Non HTTP response message: Connection refused**" tn="Thread Group 1-1" dt="text" by="2371" ng="1" na="1">

2)我通过最终在jmeter参数中设置的maven属性传递用户,持续时间,爬坡,数据文件等的值,例如-DUsers=50在jenkins上的maven命令中传递将在jmeter内为{__P(users)}设置。这不起作用,我可以从日志中看出,它不会放置传递的 Jmeter 参数的值。主机名、端口、用户、持续时间 一切都变为空或默认值。我也尝试使用 udv,但同样的问题,值没有被传递。 它在升级之前工作正常。

下面是我的POM文件。

<modelVersion>4.0.0</modelVersion>
<groupId>com.abcd.efg</groupId>
<artifactId>app-Performance-Test</artifactId>
<version>1.0-SNAPSHOT</version>
<packaging>pom</packaging>
<build>
<plugins>
<plugin>
<groupId>com.lazerycode.jmeter</groupId>
<artifactId>jmeter-maven-plugin</artifactId>
<version>2.6.0</version>
<executions>
<execution>
<id>jmeter-tests</id>
<phase>verify</phase>
<goals>
<goal>jmeter</goal>
</goals>
</execution>
</executions>
<configuration>
<generateReports>true</generateReports>
<scanResultsForSuccessfulRequests>true</scanResultsForSuccessfulRequests>
<scanResultsForFailedRequests>true</scanResultsForFailedRequests>
<downloadOptionalDependencies>false</downloadOptionalDependencies>
<resultsDirectory>/path/report</resultsDirectory>
<propertiesUser>
<host>${hostName}</host>
<port>${portNumber}</port>
<users>${Users}</users>
<duration>${duration}</duration>
<rampup>${rampUp}</rampup>
<datafile>${test.data}</datafile>
</propertiesUser>
<jmeterExtensions>
<artifact>kg.apc:jmeter-plugins-casutg:2.4</artifact>
</jmeterExtensions>
<testResultsTimestamp>false</testResultsTimestamp>
<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>
</configuration>
</plugin>
</plugins>
</build>
<dependencies>
<dependency>
<groupId>org.apache.jmeter</groupId>
<artifactId>ApacheJMeter_core</artifactId>
<version>3.3</version>
<exclusions>
<exclusion>
<groupId>org.apache.tika</groupId>
<artifactId>tika-parsers</artifactId>
</exclusion>
</exclusions>
</dependency>
<dependency>
<groupId>org.apache.jmeter</groupId>
<artifactId>ApacheJMeter_java</artifactId>
<version>3.3</version>
<exclusions>
<exclusion>
<groupId>org.apache.tika</groupId>
<artifactId>tika-parsers</artifactId>
</exclusion>
</exclusions>
</dependency>
</dependencies>

我可以尝试的任何建议或您可以发现的任何错误,请告诉我。如果我需要提供更多信息,请告诉我。真的很感谢任何帮助。谢谢。

在你的pom的这一部分:

<propertiesUser>
<host>${hostName}</host>
<port>${portNumber}</port>
<users>${Users}</users>
<duration>${duration}</duration>
<rampup>${rampUp}</rampup>
<datafile>${test.data}</datafile>
</propertiesUser>

您使用属性,但这些属性在哪里设置?

检查 target/jmeter/logs/<您的 jmx=" 文件=">.log的内容或共享它们。

最新更新