So übergeben Sie Java-Code einen Parameter von Maven zum Testen
Ich muss folgende Werte weitergeben ...
exeEvironment (Test Umgebung) ,testGroup (Gruppe in testNG)
von der Kommandozeile -> POM -> TestNG -> Testfälle.
Basierend auf diesen beiden Beiträgen ....
Übergeben Sie einen Java-Parameter von Maven
Wie übergebe ich Parameter vom Surefire Maven-Plugin an den TestNG-Test?
Ich habe die folgende Konfiguration gemacht ..
Imtodsichere PluginIch habe versucht, zwei Optionen zu folgen, keine scheint zu funktionieren.
=====
(1)
<execution>
<id>default-test</id>
<goals>
<goal>test</goal>
</goals>
<configuration>
<properties>
<exeEnvironment>${exeEnvironment}</exeEnvironment>
<testGroup>${testGroup}</testGroup>
</properties>
<suiteXmlFiles>
<suiteXmlFile>testng.xml</suiteXmlFile>
</suiteXmlFiles>
</configuration>
</execution>
(2)
<execution>
<id>default-test</id>
<goals>
<goal>test</goal>
</goals>
<configuration>
<systemPropertyVariables> <exeEnvironment>${exeEnvironment}</exeEnvironment>
<testGroup>${testGroup}</testGroup> </systemPropertyVariables>
<suiteXmlFiles>
<suiteXmlFile>testng.xml</suiteXmlFile>
</suiteXmlFiles>
</configuration>
</execution>
ImtestNG.xml , kann ich die Variable verwendentestGroup
mögen …
<test name="Web Build Acceptance">
<groups>
<run>
<include name="${testGroup} />
</run>
</groups>
<classes>
<class name="com.abc.pqr" />
</classes>
</test>
Dies scheint nicht so gut zu funktionieren, muss ich einen Parameter definieren.
In demTestfälle Ich habe versucht, die Variablen auf zwei Arten zu ermitteln: (1)
testEnv = testContext.getSuite().getParameter("exeEnvironment");
testGroup = testContext.getSuite().getParameter("testGroup");
(2)
testEnv = System.getProperty("exeEnvironment");
testGroup = System.getProperty("testGroup");