Skip to content

Instantly share code, notes, and snippets.

@swapnilshrikhande
Last active May 31, 2017 05:27
Show Gist options
  • Save swapnilshrikhande/3323c5e483d88b5d15ca6b2d1ceca722 to your computer and use it in GitHub Desktop.
Save swapnilshrikhande/3323c5e483d88b5d15ca6b2d1ceca722 to your computer and use it in GitHub Desktop.
Selenium Support Multiple Browsers
/*Embed this method in your test class*/
private WebDriver getWebdriver(String browser){
WebDriver driver = null;
// If the browser is Firefox, then do this
if(browser.equalsIgnoreCase("firefox")) {
System.setProperty("webdriver.gecko.driver", "drivers\\geckodriver.exe");
driver = new FirefoxDriver();
// If browser is IE, then do this
} else if (browser.equalsIgnoreCase("chrome")){
System.setProperty("webdriver.chrome.driver", "drivers\\chromedriver.exe");
driver = new ChromeDriver();
} else if (browser.equalsIgnoreCase("ie")) {
// Here I am setting up the path for my IEDriver
System.setProperty("webdriver.ie.driver", "drivers\\IEDriverServer.exe");
driver = new InternetExplorerDriver();
}
return driver;
}
<?xml version="1.0" encoding="UTF-8"?>
<suite name="Suite" parallel="none">
<!-- Test Suite Level Parameters -->
<parameter name="baseUrl" value="http://swapnilshrikhande.github.io/" />
<test name="FireFoxTest">
<!-- Test Level Parameters -->
<parameter name="browser" value="firefox" />
<classes>
<class name="com.eternussolutions.<ClassName>"/>
</classes>
</test>
<test name="ChromeTest">
<!-- Test Level Parameters -->
<parameter name="browser" value="chrome" />
<classes>
<class name="com.eternussolutions.<ClassName>"/>
</classes>
</test>
<test name="IETest">
<!-- Test Level Parameters -->
<parameter name="browser" value="ie" />
<classes>
<class name="com.eternussolutions.<ClassName>"/>
</classes>
</test>
<!-- Test -->
</suite> <!-- Suite -->
//Update setUp method to accept browser name as parameter
/*Testng will pass browser value as a parameter to this method*/
@Parameters("browser")
@BeforeClass(alwaysRun = true)
public void setUp(String browser) throws Exception {
//other code ...
//initialize driver using getWebdriver method
driver = getWebdriver(browser);
//other code ...
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment