1.概述

在本教程中,我们将使用加特林。首先,让我们确保熟悉的概念格林机关枪。

2.使用Maven创建一个Gatling项目

我们的目标是将使用Gatling的负载测试插入到Jenkins CI/CD管道中。为了自动化这个验证步骤,我们可以使用Maven打包这个工具。

2.1。依赖关系

Gatling提供了一个插件——Gatling Maven plugin——它允许我们在项目的Maven构建阶段使用Gatling启动负载测试。通过这种方式,可以将负载测试集成到任何持续集成工具中。

因此,让我们将Gatling集成到一个示例Maven项目中。首先,我们需要以下依赖项pom.xml文件:

<依赖> < groupId > io.gatling。 3.3.1   io. jpg (0.54 kb,下载时间:0) 3.3.1   io. js . js . js . js . jsgatling-recorder 3.3.1 

除了前面的依赖项外,我们还需要指定gatling-maven-plugin的插件部分pom.xml:

<插件> < groupId > io。 3.0.5  org.baeldung. log . log . log . log . log . log . log 金宝搏188体育. log . log . log . log。$ {SimulationClass} < / SimulationClass > < /配置> < /插件>

SimulationClass值表示用于执行负载测试的模拟类。Gatling版本和Gatling Maven Plugin版本不必相同。在这里,我们可以找到加特林的最新版本,而在下面的链接中,我们可以找到Gatling Maven Plugin的最新版本。

2.2。创建一个场景

模拟由一个场景组成,该场景可以包含多个请求的执行。

模拟是用Scala,使用Gatling的DSL,它简单而直观。

2.3。运行场景

一旦我们编写了执行负载测试所需的代码,我们可以构建项目并运行模拟:

MVN清洁包MVN加特林:测试

在生成的目标文件夹中,我们可以找到由Gatling执行的负载测试报告。

3.将Gatling与Jenkins整合

将Gatling集成到Jenkins管道中使我们能够在其执行期间执行负载测试

通过这种方式,我们可以验证我们发布的代码中所做的更改不会导致性能的显著下降。

这增加了即将发布的新代码的可靠性和信心

3.1。创建Jenkinsfile

在我们的项目中,我们创建Jenkinsfile指导它如何运行加特林:

管道{agent any stage {stage("Build Maven") {steps {sh 'mvn -B clean package'}} stage("Run Gatling") {steps {sh 'mvn Gatling:test'} post {always {gatlingArchive()}}}}}

剧本分为两个阶段:

  • 构建项目(Maven)
  • 运行并存档我们的场景(Gatling)

接下来,我们提交并将测试代码推送到源代码管理系统。一旦配置完成,Jenkins将能够读取和执行新创建的脚本。

3.2。创建一个管道

使用这个JenkinsFile,我们将创建自己的管道。在Jenkins中创建管道很简单。

让我们先浏览Jenkins主页,然后点击新项目中,选择管道给它起个有意义的名字。要了解更多关于在Jenkin金宝搏官网188bes创建管道的信息,我们可以访问我们的教程专门讨论这个主题

让我们配置新创建的管道。在管道节,我们选择脚本的源。

具体来说,让我们从下拉菜单中进行选择来自SCM的管道脚本,设置存储库的URL,设置检索源代码所需的凭据,提供接收脚本的分支,最后指出找到新创建的脚本的路径Jenkinsfile

窗口应如下所示:

3.3。加特林詹金斯插件

在运行新创建的管道之前,我们需要安装Gatling Jenkins Plugin。

这个插件允许我们:

  • 在每个管道运行时获取并发布详细的报告
  • 跟踪每个模拟并提供趋势图

gatlingArchive ()插入到管道中的命令是这个插件的一部分,它允许我们启用刚才提到的报告。

让我们安装插件并重启Jenkins。

在这一点上,我们的负载测试的管道已经准备好运行了

3.4。分离负载生成

就资源而言,生成执行测试的调用负载是相当昂贵的操作。因此,在运行管道的主Jenkins节点上执行这些操作并不是一个好主意。

我们将使用Jenkins从节点来执行管道中的一些步骤。

假设我们已经在Jenkins上正确配置了一个或多个从节点;的代理任何插入到新创建的管道中的命令允许我们分配一个executor节点,并在该节点上运行指定的代码。

4.运行管道

是时候运行我们的管道了。

在Jenkins home中,我们选择新创建的管道并单击现在构建。然后等待管道运行。在执行的最后,我们应该看到一个类似这样的图表:

5.查看结果

在管道的执行页面中,我们可以看到如何生成一个图,它显示了负载测试生成的平均响应时间。该图表是由Gatling Jenkins Plugin生成的。它将包含最近15个构建版本的数据,以便提供我们发布版本的性能趋势的即时证据。

如果我们点击加特林按钮,在管道的执行页面中,我们将看到显示最近15次构建趋势的图表。

特别是,我们将有以下信息:金宝搏官网188be

  • 平均响应时间
  • 95%的响应时间,还有
  • “KO”中请求的百分比(即“不正常”)

在页面底部,在刚才提到的图表之后,我们将找到为每个构建生成的Gatling报告的链接。

通过点击链接,我们可以直接在Jenkins内部查看已经生成的Gatling报告:

6.结论

在本教程中,我们看到了如何将使用Gatling执行的负载测试插入到Jenkins管道中。我们首先解释了如何使用Gatling生成负载测试,如何创建Jenkinsfile运行它,以及如何将它集成到Jenkins管道中。

最后,我们展示了如何使用Gatling Jenkins Plugin在Jenkins部署中直接生成Gatling报告。

要了解更多关于如何构建测试场金宝搏官网188be景来监控网站性能的信息,让我们访问一下另一个加特林教程我们的。

和往常一样,教程的完整源代码已经结束GitHub上

通用的底部

开始使用Spring 5和Spring Boot 2,通过学习的春天课程:

>>看看这个课程
对这篇文章的评论关闭!