CrossBrowser Testing: 
To Test the Application in Different Browsers in Parallel.
Requirements:
TestNg Class
Browser's:Chrome,Firefox,IE
XML Suite File:For passing the parameters to the class.
Annotations:@Parameters,@BeforeMethod,@AfterMethod.
import java.util.concurrent.TimeUnit;  
  
import org.openqa.selenium.WebDriver;  
import
org.openqa.selenium.chrome.ChromeDriver; 
import
org.openqa.selenium.firefox.FirefoxDriver; 
import
org.openqa.selenium.ie.InternetExplorerDriver; 
import
org.testng.annotations.Parameters; import 
org.testng.annotations.Test;  
import
org.testng.annotations.BeforeTest;  
import
org.testng.annotations.AfterTest;     
public class cross {  
WebDriver g;     
@Test  
public void f() { 
g.manage().window().maximize();     
g.get("Mention Ur Url");
 
}          
@Parameters("browser")  
@BeforeTest  
public void beforeTest(String browser)
throws Exception  
{  
if(browser.equalsIgnoreCase("firefox"))
 
{  
g=new FirefoxDriver();  
}  
else
if(browser.equalsIgnoreCase("chrome"))  
{  
System.setProperty("webdriver.chrome.driver","d:\\driver1\\chromedriver.exe");
    
g=new ChromeDriver();  
}  
else if(browser.equalsIgnoreCase("ie"))
{  
System.setProperty("webdriver.ie.driver",
"d:\\driver1\\IEDriverServer.exe");     
g=new InternetExplorerDriver();  
}  
else{     
//If no browser passed throw exception 
   
throw new Exception("Browser is
not correct");     
}     
g.manage().timeouts().implicitlyWait(10,
TimeUnit.SECONDS);       
}     
@AfterTest  
public void afterTest() {  
g.close();     
} 
XML Suite File: 
<?xml version="1.0"
encoding="UTF-8"?>     
<!DOCTYPE suite SYSTEM
"http://testng.org/testng-1.0.dtd">     
<suite name="TestSuite"
parallel="tests" >     
<test name="ChromeTest">
    
<parameter name="browser"
value="Chrome" />     
<classes>     
<class name="test.cross">
    
</class>     
</classes> 
</test>     
<test name="FirefoxTest">
    
<parameter name="browser"
value="Firefox" />     
<classes>     
<class name="test.cross">
    
</class>     
</classes>     
</test>     
<test name="IETest">   
 
<parameter name="browser"
value="IE" />     
<classes>     
<class name="test.cross">
</class>     
</classes>     
</test>     
</suite> 
Note: When give parallel="tests" it run the browser simulataneously
or When parallel="false" it run the browser one by one. 
 
No comments:
Post a Comment