在我的pom.xml上,我创建了一些配置文件。在我的Eclipse项目中,我选择了必须用于运行TestNG的配置文件。测试必须做不同的事情取决于配置文件。我尝试使用${project.activeProfiles[0].id}
,但对我不起作用。
Eclipse选择了个人资料:
TestNG执行错误:
MVN命令:
当我运行mvn help:active-profiles
命令时,结果为:
The following profiles are active:
[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESS
[INFO] ------------------------------------------------------------------------
mvn help:all-profiles
命令结果为:
[INFO] Listing Profiles for Project: com.myproject:project:jar:1.0
Profile Id: UAT-Dev-Mt (Active: false , Source: pom)
Profile Id: UAT-Dev-Bg (Active: false , Source: pom)
Profile Id: PROD-Dev-Mt (Active: false , Source: pom)
Profile Id: PROD-Dev-Bg (Active: false , Source: pom)
Profile Id: Acceptance (Active: false , Source: pom)
Profile Id: Regression (Active: false , Source: pom)
Profile Id: CriticalPath (Active: false , Source: pom)
[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESS
[INFO] ------------------------------------------------------------------------
为什么Eclipse上的TestNG无法使用这个选定的配置文件和maven pom变量?
提前谢谢。
答案 0 :(得分:0)
TestNG eclipse插件与Maven没有很好的集成,TestNG Eclipse插件提供的有限功能只是准备好当前活动配置文件的pom.xml中定义的系统属性(和/或环境变量)。 其他任何事情,比如个人资料特定的目标都不会被执行。
所以回到你的情况,如果你只想要配置文件管理系统属性,你可以选择一个活动的配置文件,然后简单地运行testng测试,这些属性将被注入到运行时的testng进程中。其他任何事情,尚不支持。