2017-01-10 4 views
2

Wie bereits erwähnt in here können wir Prüfverfahren laufen mit,Wie JUnit-Tests von Maven in Terminal mit JVM-Argumente

mvn -Dtest=TestCircle#xyz test 

Aber ich brauche zu setzen einige JVM-Argumente vor führen Sie den Testfall auszuführen. Wie ich

-Djava.security.manager -Djava.security.policy=mypolicy.policy

Wie verwenden müssen kann ich sagen, Maven diejenigen zu berücksichtigen, wenn ein Testfall ausgeführt wird.

+0

Mögliche Duplikat [gibt es eine Möglichkeit jvm args über die Kommandozeile übergeben zu maven?] (http://stackoverflow.com/questions/12525288/is-there-a-way-to-pass-jvm-args-via-command-line-to-maven) –

+0

@Eomm so wie können wir Verwenden Sie das, um VM-Argumente zu übergeben, wenn Testfälle ausgeführt werden. – prime

+0

Wie vorgeschlagen, könnten Sie eine Umgebungsvariable namens MAVEN_OPTS http://maven.apache.org/configure.html verwenden. –

Antwort

2

Zwei mögliche Lösungen:

Erstens, wenn Sie Ihre JVM-Argumente für alle Tests anwendbar sind, können Sie diese Informationen als Konfigurationselement für todsichere hinzufügen wie folgt:

<plugin> 
    <groupId>org.apache.maven.plugins</groupId> 
    <artifactId>maven-surefire-plugin</artifactId> 
    ... 
    <configuration> 
     <argLine>-Djava.security.manager -Djava.security.policy=mypolicy.policy</argLine> 
    </configuration> 
</plugin> 

Zweitens, wenn solche JVM Argumente auf einem Test-by-Basis angewendet werden sollen, können sie auf der Kommandozeile wie folgt angegeben werden:

mvn -Dtest=TestCircle#xyz test -DargLine="-Djava.security.manager -Djava.security.policy=mypolicy.policy"