ITestContext
It can be used to create different parameters for test cases based on groups.
Lets create java class with three groups
package testngexp;
import org.testng.ITestContext;
import org.testng.annotations.DataProvider;
import org.testng.annotations.Test;
publicclass ItestContestexample {
@Test(dataProvider = "TestITest",groups={"TestEnv"})
publicvoid TestTestEnv(String username, String pwd){
System.out.println("UserName-->"+username);
System.out.println("Password-->"+pwd);
}
@Test(dataProvider = "TestITest",groups={"ProductionEnv"})
publicvoid TestProEnv(String username, String pwd){
System.out.println("UserName-->"+username);
System.out.println("Password-->"+pwd);
}
@Test(dataProvider = "TestITest",groups={"AgileEnv"})
publicvoid TestAgileEnv(String username, String pwd){
System.out.println("UserName-->"+username);
System.out.println("Password-->"+pwd);
}
@DataProvider(name="TestITest")
public Object[][] getdata(ITestContext c){
Object[][] grparry=null;
for(String group :c.getIncludedGroups()){
System.out.println("-------------nametest Env ------------"+group);
if (group.equalsIgnoreCase("TestEnv")){
System.out.println("-----------------test Env -----------------");
grparry= new Object[][]{
{ "testnikil", "12345" },
{ "testRaj", "rere" },
{ "testKanti", "Kanti" }
};
break;
}elseif(group.equalsIgnoreCase("ProductionEnv")){
System.out.println("------------Production Env ------------");
grparry= new Object[][]{
{ "protestnikil", "12345" },
{ "protestRaj", "rere" },
{ "protestKanti", "Kanti" }
};
break;
}else{
System.out.println("------------Agile Env -----------------");
grparry= new Object[][]{
{ "agiletestnikil", "12345" },
{ "agiletestRaj", "rere" },
{ "agiletestKanti", "Kanti" }
};
}
break;
}// for loop
return grparry;
}
}
TestNG.xml
<?xmlversion="1.0"encoding="UTF-8"?>
<!DOCTYPEsuiteSYSTEM"http://testng.org/testng-1.0.dtd">
<suitename="Suite"parallel="none"verbose="1"timeOut="1000">
<testname="Test1">
<groups>
<run>
<includename="TestEnv"/>
</run>
</groups>
<classes>
<classname="testngexp.ItestContestexample"/>
</classes>
</test><!-- Test -->
</suite><!-- Suite -->
Results
If value of group is TestEnv, it will return TestEnv data setup
Comments
Post a Comment