I have four classes which having different test cases so I want to run them parallel on different browsers.
So I am not able to run them parallel
So I am getting different exception every time.
If you guys I have any tutorial to achieve parallel testing or any solution that would be helpful for me.
I am attaching testng.xml code.
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE suite SYSTEM "
http://testng.org/testng-1.0.dtd">
<suite name="Suite" thread-count="10" parallel="classes">
<test name="ChromeTestCase">
<parameter name="browser" value="chrome"></parameter>
<classes>
<class name="com.zoopla.qa.testcase.HomePageTest" />
<class name="com.zoopla.qa.testcase.PropertyPageTest" />
<class name="com.zoopla.qa.testcase.SalePageTest" />
<class name="com.zoopla.qa.testcase.AgentDetailsPageTest" />
</classes>
</test>
<test name="FirefoxTestCase">
<parameter name="browser" value="FF"></parameter>
<classes>
<class name="com.zoopla.qa.testcase.HomePageTest" />
<class name="com.zoopla.qa.testcase.PropertyPageTest" />
<class name="com.zoopla.qa.testcase.SalePageTest" />
<class name="com.zoopla.qa.testcase.AgentDetailsPageTest" />
</classes>
</test>
<test name="IETestCase">
<parameter name="browser" value="IE"></parameter>
<classes>
<class name="com.zoopla.qa.testcase.HomePageTest" />
<class name="com.zoopla.qa.testcase.PropertyPageTest" />
<class name="com.zoopla.qa.testcase.SalePageTest" />
<class name="com.zoopla.qa.testcase.AgentDetailsPageTest" />
</classes>
</test>
</suite>
Below is my driver initialization class.
public class TestBase {
public static WebDriver driver;
public TestBase() throws IOException {
OSName = System.getProperty("os.name");
System.out.println(OSName);
OSName = OSName.substring(0, 3);
System.out.println(OSName);
if (OSName.equalsIgnoreCase("Mac")) {
prop = new Properties();
System.out.println("If else");
FileInputStream fis = new FileInputStream("./src/main/java/com/zoopla/qa/config/config.properties");
prop.load(fis);
System.out.println("prop loaded");
} else if (OSName.equalsIgnoreCase("Win")) {
System.out.println("In prop eles");
prop = new Properties();
FileInputStream fis = new FileInputStream(".\\src\\main\\java\\com\\zoopla\\qa\\config\\config.properties");
prop.load(fis);
}
}
public void initialization(String browserName) {
//String browserName = prop.getProperty("browser");
System.out.println("prop loaded" +browserName);
if (browserName.equalsIgnoreCase("chrome")) {
// System.setProperty("webdriver.chrome.driver", "./");
WebDriverManager.chromedriver().setup();
driver = new ChromeDriver();
} else if (browserName.equalsIgnoreCase("FF")) {
WebDriverManager.firefoxdriver().setup();
driver = new FirefoxDriver();
System.out.println("In prop eles loaded FF1");
} else if (browserName.equalsIgnoreCase("IE")) {
WebDriverManager.iedriver().setup();
driver = new InternetExplorerDriver();
} else {
System.out.println("No browser");
}
driver.manage().window().maximize();
driver.manage().deleteAllCookies();
driver.manage().timeouts().pageLoadTimeout(60, TimeUnit.SECONDS);
driver.manage().timeouts().implicitlyWait(60, TimeUnit.SECONDS);
driver.get("
https://www.zoopla.co.uk/");
}
}