并行测试执行Jenkins

时间:2016-05-31 08:28:15

标签: java testing jenkins parallel-processing automation

我有一些自动化测试,我正在使用Jenkins运行。

我和Jenkins连接到我的GitSwarm,它从我的分支中提取代码,然后将其解析出来。

我已经安装了"并行测试作业执行插件"詹金斯。

在插件中,我已指定测试分3批运行

screenshot

还有什么我应该说明的吗?我没想到自从我连接到GitSwarm运行代码以来我不得不这样做。控制台输出似乎另有说明!

在工作区C:\ Jenkins \ jobs \ GIT_DVT \ workspace

中构建
git.exe rev-parse --is-inside-work-tree # timeout=10
Fetching changes from the remote Git repository
git.exe config remote.origin.url https://.../VMAX_UNISPHERE/stoage_mgmt.git # timeout=10
Fetching upstream changes from https://.../VMAX_UNISPHERE/stoage_mgmt.git
git.exe --version # timeout=10
using .gitcredentials to set credentials
git.exe config --local credential.username reganc3 # timeout=10
git.exe config --local credential.helper store --file=\"C:\Users\ADMINI~1\AppData\Local\Temp\2\git5891789764540509525.credentials\" # timeout=10
git.exe -c core.askpass=true fetch --tags --progress https://.../VMAX_UNISPHERE/stoage_mgmt.git +refs/heads/*:refs/remotes/origin/*
git.exe config --local --remove-section credential # timeout=10
git.exe rev-parse "origin/Uni_360_1.0^{commit}" # timeout=10
Checking out Revision 08df9a379e14d8a634e4533d962f5919f755ae67 (origin/Uni_360_1.0)
git.exe config core.sparsecheckout # timeout=10
git.exe checkout -f 08df9a379e14d8a634e4533d962f5919f755ae67
git.exe rev-list 08df9a379e14d8a634e4533d962f5919f755ae67 # timeout=10
No record available, so executing everything in one place
[parameterized-trigger] Current build has no parameters.
ERROR: Build aborted. No projects to trigger. Check your configuration!
TestNG Reports Processing: START
Looking for TestNG results report in workspace using pattern: C:\jenkins\jobs\GIT_DVT\workspace\unisphere360\target\surefire-reports\
Did not find any matching files.
Finished: FAILURE

任何帮助都会非常感激,看起来似乎是让测试并行运行的简单方法,所以希望它只是一个小错误。

1 个答案:

答案 0 :(得分:2)

我认为你误解了这个插件:

  

此插件添加了一个新的构建器,使您可以轻松地并行执行在单独作业中定义的测试。这是通过让Jenkins查看上次运行的测试执行时间,将测试拆分成大小相等的多个单元,然后并行执行它来实现的。

您已经定义了一个新作业来运行此插件调用的测试。 (source

但我想......

您可以通过不同的方式实现这一目标:

  • 使用TestNG的parallel keyword
    您可以定义测试套件并说明它们应该如何执行。
  • 创建一个新作业,将测试作为参数运行并通过插件调用它(你需要一份新工作并且有Jenkins的开销)
  • 使用Job DSL PluginPipeline Plugin的并行关键字(您必须重新创建作业定义)