Test Methods are annotated with @Test; These methods can be grouped and executed separately using TestNG framework. The methods can also be executed based on the priority.
Please find a Test Suite with real-time implementation as given below,
private WebDriver driver;
private String baseUrl;
@BeforeTest(groups = { "Group1", "Group2" })
public void setUp() throws Exception {
driver = new FirefoxDriver();
baseUrl = "http://www.justdial.com";
driver.manage().window().maximize();
driver.manage().timeouts().implicitlyWait(10, TimeUnit.SECONDS);
}
@Test(groups = { "Group1" }, priority=3)
public void test1() throws Exception {
driver.get(baseUrl + "/");
driver.findElement(By.id("what")).sendKeys("G1a");
driver.findElement(By.id("where")).sendKeys("Chennai");
System.out.println("I am G1a");
}
@Test(groups = { "Group1" }, priority=2)
public void test2() throws Exception {
driver.get(baseUrl + "/");
driver.findElement(By.id("what")).sendKeys("G1b");
driver.findElement(By.id("where")).sendKeys("Chennai");
System.out.println("I am G1b");
}
@Test(groups = { "Group2" })
public void test3() throws Exception {
driver.get(baseUrl + "/");
driver.findElement(By.id("what")).sendKeys("G2a");
driver.findElement(By.id("where")).sendKeys("Chennai");
System.out.println("I am G2a");
}
@Test(groups = { "Group1" }, priority=1)
public void test4() throws Exception {
driver.get(baseUrl + "/");
driver.findElement(By.id("what")).sendKeys("G1c");
driver.findElement(By.id("where")).sendKeys("Chennai");
System.out.println("I am G1c");
}
@Test(groups = { "Group2" })
public void test5() throws Exception {
driver.get(baseUrl + "/");
driver.findElement(By.id("what")).sendKeys("G2b");
driver.findElement(By.id("where")).sendKeys("Chennai");
System.out.println("I am G2b");
}
@AfterTest(groups = { "Group1", "Group2" })
public void tearDown() throws Exception {
driver.quit();
}
Create .xml file and replace the code
Right-click on your Project/Class file > TestNG > "Convert to TestNG" > Replace with the xml code given below > Finish
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE suite SYSTEM "http://testng.org/testng-1.0.dtd">
<suite name="Suite" parallel="none">
<test name="Test1">
<classes>
<class name="package.classname"></class>
</classes>
<groups>
<run>
<include name="Group1"/>
</run>
</groups>
</test>
</suite> <!-- Suite -->