Seleniumの異なるブラウザWebDriverの処理方法
1822 ワード
FirefoxDriver
は有効なWebDriver実装の1つにすぎない.ChromeDriveを使用してChrome内部でテストを実行し、同じテストを実行できます.
ChromeDriverを利用した完全な例を示した.
public class Selenium2Example2Test {
@Test
public void test() {
System.setProperty("webdriver.chrome.driver",
"src/main/resources/drivers/chrome/chromedriver-mac");
// Instantiate a webDriver implementation
WebDriver webdriver = new ChromeDriver();
webdriver.get(https://github.com);
Assert.assertEquals("GitHub - Social Coding", webdriver.getTitle());
}
}
ChromeDriverをインスタンス化する前に、
"webdriver.chrome.driver"
システムのプロパティを正しく設定する必要があります.このプロパティは、オペレーティングシステムのChromeDriverファイルの場所を示します(参考資料とダウンロードを参照).例はMacのバージョンを使用しています.WindowsおよびLinuxのバージョンでも使用できます.
Internet Explorerで同じテストを実行するには、リスト7に示すように、
InterentExplorerDriver
クラスのインスタンスが必要です.WebDriver webdriver = new InternetExplorerDriver();
InterenetExplorerDriver
を使用すると、「Protected Mode must be set to the same value(enabled or disabled)for all zones」というセキュリティ上の問題が発生する可能性があります.この問題を解決するには、リスト8に示すように、特定の機能を設定する必要がある.DesiredCapabilities capability=DesiredCapabilities.internetExplorer();
capability.setCapability(
InternetExplorerDriver.INTRODUCE_FLAKINESS_BY_
IGNORING_SECURITY_DOMAINS, true);
WebDriver webdriver = new InternetExplorerDriver(capability);
Operaでテストを実行するには、
OperaDriver
クラスをインスタンス化する必要があります.これはOperaが直接開発したものです.ドライバを含むJARをプロジェクトに含めることを忘れないでください.Mavenを使用する場合は、リスト9の依存性を増やすだけです.