【发布时间】:2015-10-09 21:53:55
【问题描述】:
我想使用 2 个不同的配置文件运行我的测试,每个配置文件都设置一个 Java 属性,导致我的 scala 测试代码以不同的方式执行。
我尝试配置 maven-surefire 和 maven-scalatest 插件:
<plugin>
<groupId>org.scalatest</groupId>
<artifactId>scalatest-maven-plugin</artifactId>
<version>1.0</version>
<configuration>
<systemProperties>
<spark.master>local</spark.master>
</systemProperties>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
<version>2.18.1</version>
<configuration>
<systemPropertyVariables>
<spark.master>local</spark.master>
</systemPropertyVariables>
</configuration>
</plugin>
但似乎它们都不起作用,执行 System.getProperty("spark.master") 时结果仍然为空。我应该怎么做才能启用此设置?
//--------------------------------------------- --
对第一个答案的回应:
我已将我的 surefire 配置更改为以下内容:
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
<version>2.18.1</version>
<executions>
<execution>
<id>test</id>
<goals>
<goal>test</goal>
</goals>
<systemPropertyVariables>
<spark.master>${spark.master}</spark.master>
</systemPropertyVariables>
</execution>
</executions>
<configuration>
<forkCount>1</forkCount>
</configuration>
</plugin>
但显然是在错误的地方。 Maven 给了我这个错误:
[ERROR] Malformed POM /home/peng/git/datapassport/pom.xml: Unrecognised tag: 'systemPropertyVariables' (position: START_TAG seen ...</goals>\n <systemPropertyVariables>... @170:50) @ /home/peng/git/datapassport/pom.xml, line 170, column 50 -> [Help 2]
【问题讨论】:
标签: java scala maven unit-testing properties