【发布时间】: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