2016-03-28 7 views
0

In Eclipse ich "Run As" "Maven Test" oder "Maven Build" und die Tests fehlschlagen. In "Run Configurations" Ich habe die Tore als"Argline" Argument funktioniert nicht in Maven Surefire Eclipse JUnit

sauber Paket -DargLine = set "- Darg1 = 7070 -Darg2 = 9"

Ich habe auch versucht, über Argumente über pom.xml Einstellung etwa so:

<plugin> 
       <groupId>org.apache.maven.plugins</groupId> 
       <artifactId>maven-surefire-plugin</artifactId> 
       <version>2.12.4</version> 
       <configuration> 
        <argLine>-Darg1=7070 -Darg2=9</argLine> 
       </configuration> 
</plugin> 

Mein JUnit Testcase ist:

public class TestCase1 { 

    private static String arg1; 
    private static String arg2; 

    @Test 
     public void testStart() throws Exception { 
      System.out.println("arg1: " + arg1); 
      System.out.println("arg2: " + arg2); 
     } 
    } 

Sowohl arg1 und arg2 kommen als null.

Wenn jemand helfen kann, danke.

+0

Der Test verwendet nie die Programmargumente. Und arg1 und arg2 werden niemals initialisiert, daher sind sie null. –

+0

Der Test verwendet diese Argumente. Ich habe gerade Code geschrieben, um zu zeigen, dass sie null sind. Und sollten diese nicht über pom.xml initialisiert werden? Ich meine, sollte nicht arg7070 und arg2 9 sein? Wenn nicht, wie kann man sie dann von pom.xml aus initialisieren? – AarCee

+0

Sie holen die Argumente nicht, sondern prüfen nur den Wert von nicht initialisierten Variablen, die natürlich Null sind –

Antwort

0

Die Felder werden nicht automatisch abgerufen. Sie müssen System.getProperty(String name) anrufen.

private static String arg1 = System.getProperty("arg1"); 
private static String arg2 = System.getProperty("arg2");