Jenkins:传递参数以构建为file / json / string

时间:2013-07-02 14:19:03

标签: jenkins automated-tests testng jenkins-plugins

我有Jenkins + Maven2 + TestNG设置。我使用它作为平台来运行自动化测试套件(功能测试)作为参数化构建。

在测试启动之前,每个测试套件都有几个(~10-20)参数供用户设置。这些参数从一个测试套件到另一个测试套件不同。

现在,我为Jenkins中的每个测试套件定义参数,将它们提供给Maven2(作为surefire插件属性的<systemPropertyVariables>)并在测试中使用它们System.properties[ '<param_name>' ](我们(我们的团队)使用Groovy用于测试)。

随着我们测试数量的增加,这种方式会产生越来越难看的pom.xml。我们使用单个pom.xml,因为我们有一个很大的测试框架代码库构建测试。

现在我想改变另一种方式。我不确定究竟是哪一个。能不能给我一些想法?

我想从pom.xml的角度以“单参数”的方式实现参数传递:

  1. Jenkins中的用户设置参数(与现在相同的参数:param1 = value1,param2 = valuae2等)
  2. 用户点击构建按钮后Jenkins执行额外的步骤来转换单个文件中的所有参数(csv,xml等)/ json / string(“param1 = value1; param2 = value2”)
  3. Jenkins将这个新的聚合参数作为新的一般参数Param提供给Maven(即:在Jenkins聚合之后:Param =“param1 = value1; param2 = value2”,在surefire配置中:<generalParam>${Param}</generalParam>
  4. (不同)测试将此Param解析为参数列表并照常使用参数
  5. 您能否请教我如何在Jenkins中实施此类行为?

    提前致谢!

0 个答案:

没有答案