Below testng.xml
file has three parameters. I don't want parameter customerCode
to be hardcoded. I want to pass varying/diffent customerCode
to the following testng.xml
file, but also I want to have Peter as a default customerCode
if just in case I don't provide one through mvn
command line as follows:
mvn test -DcustomerCode=customer1 -Ptestng.xml
Below is the testng.xml
file:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE suite SYSTEM "http://testng.org/testng-1.0.dtd" >
<suite name="TestSuite" parallel="false">
<test name="someTest">
<parameter name="browserType" value="chrome_win"></parameter>
<parameter name="Url" value="http://regression.mytest.com/?customerCode=" />
<parameter name="customerCode" value="Peter"/>
<groups>
<run>
<exclude name="navigateToHomePage" />
</run>
</groups>
<classes>
<class name="com.automation.customermanagement.createTest.myIntegrationTest" >
<methods>
<exclude name="deleteCustomer" />
</methods>
</class>
</classes>
</test>
</suite>
How do I achieve that? Is there a way to do that?
Below is my POM file. Where do I put customerCode
property inside the profile?
<profile>
<id>AddMgmtTest</id>
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.5.1</version>
<configuration>
<source>1.8</source>
<target>1.8</target>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
<version>2.19.1</version>
<configuration>
<suiteXmlFiles>
<suiteXmlFile>admgmttestng.xml</suiteXmlFile>
</suiteXmlFiles>
</configuration>
</plugin>
</plugins>
</build>
</profile>
Here is the solution I implemented and it is working fine!
1) Add following property to POM.xml
file
<systemProperties>
<property>
<name>customerCode</name>
<value>Subaru</value>
</property>
</systemProperties>
2) Add this line to test method
String customerCode= System.getProperty("customerCode");
3) Above line pulls customerCode=customer1
provided in the following mvn command line
mvn test -DcustomerCode=customer1 -Ptestng.xml
If you do not provide customerCode
in command line it takes the default value of Subaru
that is provided in the above property in POM.xml
file
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With