当前位置: 首页 > 知识库问答 >
问题:

Jmeter(maven)不在jenkins上运行,而是在本地运行

邹博明
2023-03-14

我创建了一个测试项目(maven)来测试REST API的性能。我正在使用Jeter插件

这是我的pom片段

<build>
        <plugins>
            <plugin>
                <groupId>com.lazerycode.jmeter</groupId>
                <artifactId>jmeter-maven-plugin</artifactId>
                <version>2.5.0</version>
                <executions>
                    <execution>
                        <id>jmeter-tests</id>
                        <goals>
                            <goal>jmeter</goal>
                        </goals>
                    </execution>
                </executions>
                <configuration>
                    <resultsDirectory>/tmp/jmeter</resultsDirectory>
                </configuration>
            </plugin>
        </plugins>
 </build>

我有一个Jenkins文件在我的项目像这样

pipeline {
   agent any

environment {
    BRANCH_NAME = "${env.PIPELINE_BRANCH_NAME}"
}

stages {
    stage('SCM checkout') {
        steps {
           .......
        }
    }

    stage('Execute Jmeter tests') {
        steps {
            echo '****************************************\r*** Execute Jmeter tests'
            withMaven(jdk: 'JDK 8', maven: 'aer Maven 3') {
                sh 'mvn jmeter:jmeter'
                performanceReport parsers: [[$class: 'JMeterParser', glob: '/tmp/jmeter/**/*.jtl']], sourceDataFiles: "/tmp/jmeter/*.jtl", modePerformancePerTestCase: true, failBuildIfNoResultFile:true
            }
        }
    }
  }
}

当我触发Jenkins上的构建时,构建成功了,我在控制台输出中看到了这一点

.......
[INFO] Creating summariser <summary>
[INFO] Created the tree successfully using /mypath/....../testFiles/mytest.jmx
[INFO] Starting the test @ Fri Aug 24 21:51:37 CEST 2018 (1535140297393)
[INFO] Waiting for possible Shutdown/StopTestNow/Heapdump message on port 4445
[INFO] summary =      0 in 00:00:00 = ******/s Avg:     0 Min: 9223372036854775807 Max: -9223372036854775808 Err:     0 (0.00%)
[INFO] Tidying up ...    @ Fri Aug 24 21:51:40 CEST 2018 (1535140300073)
[INFO] ... end of run
[INFO] Completed Test: /global/otdci/apps/build_server/jenkins/jobs/SCMAER/jobs/SCMAER-TEST-performancetesting/workspace/target/jmeter/testFiles/MaterialGroup.jmx
[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESS
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 7.012 s
[INFO] Finished at: 2018-08-24T21:51:40+02:00
[INFO] Final Memory: 20M/615M
[INFO] ---------------------------------------------

问题是,它什么也做不了。Performace趋势图没有显示任何东西。

如果我在本地机器上运行相同的项目,它工作得非常好。我在日志中看到类似的东西,证实了这一点。生成的输出文件(.jtl文件)也是正确的。

[INFO] Starting the test @ Fri Aug 24 22:02:21 CEST 2018 (1535140941482)
[INFO] Waiting for possible Shutdown/StopTestNow/Heapdump message on port 4445
[INFO] summary +    177 in 00:00:08 =   21.2/s Avg:   184 Min:   117 Max:  1366 Err:     0 (0.00%) Active: 5 Started: 5 Finished: 0
[INFO] summary +    910 in 00:00:30 =   30.4/s Avg:   165 Min:   115 Max:  3205 Err:     0 (0.00%) Active: 5 Started: 5 Finished: 0
[INFO] summary =   1087 in 00:00:38 =   28.4/s Avg:   168 Min:   115 Max:  3205 Err:     0 (0.00%)
[INFO] summary +    964 in 00:00:30 =   32.1/s Avg:   154 Min:   110 Max:  3193 Err:     0 (0.00%) Active: 5 Started: 5 Finished: 0
[INFO] summary =   2051 in 00:01:08 =   30.0/s Avg:   162 Min:   110 Max:  3205 Err:     0 (0.00%)
[INFO] summary +    966 in 00:00:30 =   32.1/s Avg:   156 Min:   113 Max:  3199 Err:     0 (0.00%) Active: 5 Started: 5 Finished: 0
[INFO] summary =   3017 in 00:01:38 =   30.7/s Avg:   160 Min:   110 Max:  3205 Err:     0 (0.00%)
[INFO] summary +    948 in 00:00:30 =   31.7/s Avg:   157 Min:   114 Max:  3194 Err:     0 (0.00%) Active: 5 Started: 5 Finished: 0
[INFO] summary =   3965 in 00:02:08 =   30.9/s Avg:   159 Min:   110 Max:  3205 Err:     0 (0.00%)
[INFO] summary +    862 in 00:00:30 =   28.6/s Avg:   170 Min:   115 Max:  3226 Err:     0 (0.00%) Active: 5 Started: 5 Finished: 0
[INFO] summary =   4827 in 00:02:38 =   30.5/s Avg:   161 Min:   110 Max:  3226 Err:     0 (0.00%)
[INFO] summary +    185 in 00:00:06 =   30.1/s Avg:   178 Min:   115 Max:  3191 Err:     0 (0.00%) Active: 0 Started: 5 Finished: 5
[INFO] summary =   5012 in 00:02:45 =   30.5/s Avg:   162 Min:   110 Max:  3226 Err:     0 (0.00%)
[INFO] Tidying up ...    @ Fri Aug 24 22:05:06 CEST 2018 (1535141106249)
[INFO] ... end of run

下面是我的测试计划的一个片段

共有1个答案

范京
2023-03-14

对于任何面临同样问题的人来说。这是解决方案和我是如何找到它的。

首先,这个问题很简单。在我的测试计划(jmx)中,我使用了一个csv文件作为“CSV数据集配置”。我把这样的东西

inputFiles\materialstamm。csv

这在我的本地机器上运行得很好,因为我是在windows上运行的。它在詹金斯身上不起作用,因为它是一台Unix机器。我把这个改成

输入文件/materialstamm.csv

我的詹金斯版本开始正常运行。

现在就要找出问题所在了。这非常困难,因为Jmeter在构建过程中没有报告任何内容。即使我启用了maven调试。

因为它无法加载我的数据集(通过csv文件),所以它只是跳过了这个过程,并假设没有数据,并以生成的成功状态结束,但没有任何报告/结果。

诀窍是查找Jmeter日志文件。Jmeter在…下生成日志文件/workspace/target/jmeter/logs/testplanname。日志

但我并没有对jenkins机器的控制台访问权限,而且在jenkins UI上默认情况下也并没有看到workspace文件夹。这个答案帮助我获得了工作区文件夹。当我检查那里的日志时,它清晰可见,因为jmeter抛出了一个异常,说它找不到csv文件。

 类似资料:
  • 案例1: 使用时: 获取异常: 看到的超文本标记语言套件异常:java.lang.RuntimeException:java.lang.RuntimeException: GoogleChrome在路径中找不到!请将包含“chrome.exe”或“google-chrome”或“GoogleChrome”的目录添加到您的PATH环境可用,或显式指定GoogleChrome路径,如下所示:*goog

  • 有没有可能用ngrok代替AWS在本地运行alexa skill?我在AWS Lambda中建立了一项技能,但我更愿意使用自己的服务器。如何在本地运行Alexa? 我尝试 https://github.com/alexa-js/alexa-app-server 但这有任何意义,因为我需要重写整个代码:(更好的解决方案是 http://docs.bespoken.tools/en/latest/tu

  • 问题内容: 我以前从未与Maven合作过,并且正在按照这里的说明进行操作。当我运行命令 最初下载了一大堆依赖项,最后显示了, 我在Ubuntu 13.04上。 如果您想让我告诉您什么,请告诉我。谢谢。 编辑 当我这样做,我得到 当我做 我明白了 另外,我发现了别人面临的这个问题。但是我不确定如何执行指定的解决方案? 进一步的编辑。 问题答案: 显然,它需要$ JAVA_HOME的lib文件夹中的t

  • 我在用MacBook。当我通过测试运行测试时,我们的Jenkins服务器正在linux服务器上运行。xml文件所有测试类都在运行,但当我运行Jenkins build时,它的not Get run错误是驱动程序不可执行 我在Jenkins中创建了maven项目,并从bitbucket中给出了该项目的回购url 有人帮我解决这个问题吗?

  • 以下是在远程主机上安装PIP/BOTO的任务,这些任务在运行route53模块时不会再出现错误:

  • 我试图让我的硒测试在詹金斯运行,但面临以下问题。当使用maven test或intellij运行时,测试在我的本地计算机上运行得很好。 Firefox 39 x64 Selenium 2.46.0 SeleniumHQ插件(自动更新,所以应该是最新版本) 根据这个Xvfb服务器应该正在运行 问题出在哪里?我在网上搜索了两天,尝试了几乎所有我找到的东西后,我想不出来了。 资料来源: 错误: