是否可以在一个项目中有多个 POM 和 TESTNG 文件?
Is it possible to have multiple POM and TESTNG files in a project?
我有以下设置:
Jenkins 指向 -> Pom.xml 指向 -> Testng.xml
我的目标是在 Jenkins 中拥有多个作业,每个作业指向不同的环境。这些环境目前由多个 TestNG 文件分隔。我在每个 testng.xml 文件中设置了指向不同环境的参数。
有没有办法拥有多个 POM 文件,每个文件指向不同的 testng 文件?
谢谢
您应该使用一个为每个环境定义 "profile" 的 pom 文件。环境的配置文件将自定义该环境所需的所有配置(包括指向正确的 testng 文件)。
在您的 pom 中,您将包含
<profiles>
<profile>
<id>foo</id>
<properties>
...
</properties>
<build>
...
</build>
</profile>
<profile>
<id>bar</id>
<properties>
...
</properties>
<build>
...
</build>
</profile>
</profiles>
并用
调用它
mvn -Pfoo
或
mvn -Pbar
正如您所说,您将希望每个环境都有一个 Jenkins 作业(在该作业的配置中使用 -Pfoo),或者您可以有一个 Jenkins 作业并将配置文件作为参数传递给该作业。
我有以下设置:
Jenkins 指向 -> Pom.xml 指向 -> Testng.xml
我的目标是在 Jenkins 中拥有多个作业,每个作业指向不同的环境。这些环境目前由多个 TestNG 文件分隔。我在每个 testng.xml 文件中设置了指向不同环境的参数。
有没有办法拥有多个 POM 文件,每个文件指向不同的 testng 文件?
谢谢
您应该使用一个为每个环境定义 "profile" 的 pom 文件。环境的配置文件将自定义该环境所需的所有配置(包括指向正确的 testng 文件)。
在您的 pom 中,您将包含
<profiles>
<profile>
<id>foo</id>
<properties>
...
</properties>
<build>
...
</build>
</profile>
<profile>
<id>bar</id>
<properties>
...
</properties>
<build>
...
</build>
</profile>
</profiles>
并用
调用它mvn -Pfoo
或
mvn -Pbar
正如您所说,您将希望每个环境都有一个 Jenkins 作业(在该作业的配置中使用 -Pfoo),或者您可以有一个 Jenkins 作业并将配置文件作为参数传递给该作业。