【问题标题】:Automatic SVN builds to use parameters自动 SVN 构建以使用参数
【发布时间】:2012-03-02 13:43:12
【问题描述】:

我是一名软件测试员,我们正在使用 jenkins 进行 CI。我正在使用 TestNG 和 我有一个参数,它指定要运行的 TestSuite。 所以在我的 pom.xml 我有以下内容:

<suiteXmlFile>src/test/java/${testSuite}</suiteXmlFile>

我们有各种 TestSuite,比如 SmokeTest.xml、Integration.xml 等等。 对于手动构建请求,我设置了一个参数 DropDown 来选择我要运行的 *.xml 文件。

但是如何指定一个标准值,它将用于每个 SVN 触发的构建?

我尝试在项目的配置选项卡中设置"testSuite=SmokeTest.xml",但这样它总是使用 SmokeTest.xml 并忽略从 DropDown 中选择的值:(

非常感谢

【问题讨论】:

  • 对于您的mentoined集成测试,您应该使用maven的集成测试生命周期阶段(看起来像一个maven构建)并且不要为此使用参数。另一个可能是最好的使用配置文件。但你提供的信息不多。
  • @khmarbaise 我同意这可能不是进行集成测试的最佳方式(我们在其他环境中也这样做)。也许那是一个不好的例子。所以特别是,我有多个测试集,在它们各自的 *.xml 中指定为 TestSuites。默认情况下,我想运行一个smoketest-suite(在每次触发自动构建的svn-change之后)-但我也想按需运行特殊套件
  • 根据我所见,您似乎在使用 TestNG 为什么不使用组来实现这种目的。此外,您可以定义组并将 maven-surefire 和 maven-failsafe 的配置定义到应该解决该问题的特定配置文件中。
  • 好的,我去看看:)
  • 您是否为下拉参数命名并在调用 mvn 时使用了该参数,例如 mvn -DsuiteXmlFiles=${DROPDOW} ...

标签: svn parameters hudson jenkins testng


【解决方案1】:

我发现 jenkins 默认使用 DropDown-values 的第一行。所以我在第一行添加了 Regression.xml 和下面的其他值。

这样,Regression.xml 会在 svn 更新后(或在重建前项目后)自动触发,但我仍然有机会按需运行其他测试。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2010-11-17
    • 2010-10-06
    • 1970-01-01
    • 2011-03-05
    • 1970-01-01
    • 1970-01-01
    • 2012-11-01
    • 1970-01-01
    相关资源
    最近更新 更多