我尝试在我的pom.xml中设置属性,并在我的jUnit测试期间访问它们。
我想要读取它们的类是由jUnit Test.java
导入并正在使用
String prop = System.getProperty("target1");
但它总是为空。我在pom.xml中尝试过的内容:
...
<profiles>
<profile>
<id>default</id>
<activation>
<activeByDefault>true</activeByDefault>
</activation>
<properties>
<target1>2948</target1>
</properties>
</profile>
</profiles>
以及
...
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-failsafe-plugin</artifactId>
<version>2.15</version>
<systemPropertyVariables>
<target2>2948</target2>
</systemPropertyVariables>
<systemProperties>
<property>
<name>target3</name>
<value>2948</value>
</property>
</systemProperties>
...
</configuration>
...
我确实有一个父pom.xml,但这不是问题吗? 我正在使用Netbeans并通过在pom.xml上点击“Test File”来启动测试
谢谢你们:)
答案 0 :(得分:1)
我不知道maven-failsafe-plugin,但我可以通过在maven-surefire-plugin中添加属性和值来获得结果,因为这是maven项目中junit测试所使用的。以下是详细说明:Specify system property to Maven project
来自maven网站(http://maven.apache.org/surefire/maven-failsafe-plugin/) - “Failsafe插件旨在运行集成测试,而Surefire插件旨在运行单元测试”。由于您运行的是junit,因此应将属性添加到surefire插件。