WebDriver可以取代ChromeDriver,以使Selenium测试适用于所有浏览器

时间:2016-09-30 16:22:55

标签: selenium selenium-webdriver testng selenium-chromedriver

我正在使用TestNG和Java自动化我的测试:

  • WebDriver可以取代ChromeDriver,以便让我们的测试适用于所有浏览器,例如Chrome,Firefox,Mozilla,Safari,Opera ......?

  • 我们应该如何配置浏览器以便为所有浏览器使用相同的代码?

2 个答案:

答案 0 :(得分:2)

基本上,您只是新建一个派生自RemoteWebDriver的不同类,具体取决于您正在测试的浏览器。

e.g。

void GetWebDriver(String browserName) {
        if (CHROME.equals(browserName))
            return new ChromeDriver(capability);
        else if (FIREFOX.equals(browserName))
            return new FirefoxDriver(capability);
        else if (EDGE.equals(browserName))
            return new EdgeDriver(capability);
        else if (INTERNET_EXPLORER.equals(browserName))
            return new InternetExplorerDriver(capability);
        else if (OPERA.equals(browserName))
            return  new OperaDriver(capability);
        else if (SAFARI.equals(browserName))
            return  new SafariDriver(capability);
}

我建议你研究这个githob项目:https://github.com/sebarmeli/Selenium2-Java-QuickStart-Archetype

具体来说,WebDriverFactory.java file

答案 1 :(得分:1)

在不同浏览器中运行代码以使用Selenium Grid和RemoteWebDriver的最简单方法。您可以在以下链接中找到该文档:

  

https://github.com/SeleniumHQ/selenium/wiki/Grid2