0

我创建了一个基于 gatling maven 的应用程序;编写了一些动作、场景并能够在 IDE 中成功地在本地运行它们, $mvn gatling:test用于构建项目和查看加特林报告。

现在我正在尝试将 jenkins 作业配置为自动执行此操作,但是在 bash 脚本中使用相同的命令失败:

Build step 'Execute shell' marked build as failure
Archiving Gatling reports...
Could not find a Gatling report in results folder.

我的 pom.xml 与:https ://github.com/gatling/gatling-maven-plugin-demo/blob/master/pom.xml 相同,除了我还尝试添加:

<configuration>
 <resultsFolder>/jenkinsworkspace/projectName/target/gatling</resultsFolder>
</configuration>

pom.xml:

<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">

  <modelVersion>4.0.0</modelVersion>

  <groupId>io.gatling</groupId>
  <artifactId>project-id</artifactId>
  <version>3.1.2</version>

  <properties>
    <maven.compiler.source>1.8</maven.compiler.source>
    <maven.compiler.target>1.8</maven.compiler.target>
    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
    <gatling.version>${project.version}</gatling.version>
    <gatling-plugin.version>3.0.1</gatling-plugin.version>
  </properties>

  <dependencies>
    <dependency>
      <groupId>io.gatling.highcharts</groupId>
      <artifactId>gatling-charts-highcharts</artifactId>
      <version>${gatling.version}</version>
      <scope>test</scope>
    </dependency>
  </dependencies>

  <build>
    <plugins>
      <plugin>
        <groupId>io.gatling</groupId>
        <artifactId>gatling-maven-plugin</artifactId>
        <version>${gatling-plugin.version}</version>
      </plugin>
    </plugins>
  </build>

</project>

首先,我需要使用 Maven jenkins 项目类型而不是 freestyle 项目吗?

其次,通过在本地进行测试,我的 gatling 报告是在每次执行时在项目结构的目标文件夹中生成的。在我的仓库中,我忽略了这个文件夹(在 .gitignore 中),所以这是在运行工作时无法在工作区中找到的原因吗?

不确定我在执行 shell 构建步骤中使用的 maven 命令是否有问题,或者我的 pom.xml 是否错误。

从 jenkins 控制台输出,它似乎下载了 pom.xml 中提到的所有 maven 依赖项,但随后导致构建失败。我是新手,请提供任何建议和帮助。

4

2 回答 2

0

在 jenkins 中创建了一个新的自由样式作业,并将构建步骤配置为:将根 POM pom.xml放入目标和选项中gatling:test

也启用simulation tracking

于 2019-08-08T01:15:22.520 回答
0

我不确定如何在自由式项目中解决此问题,但我确信 Gatling-Maven 项目可以与管道作业一起使用。在此处查看详细说明:如何将 gatling 与 jenkins 集成

至于报告,您必须在 Jenkins 上安装Gatling 插件。这会Gatling在左侧的菜单栏中添加一个选项,其中列出了所有先前构建的报告。它还显示了一些关于图表的构建统计信息,这很好。然而,这些报告是不可移植的(或者至少我没有找到一种方法来下载和压缩所有源文件,就像我使用本地报告文件夹一样)。

于 2019-07-15T08:34:45.383 回答