web-dev-qa-db-ja.com

ドライバーの実行可能ファイルは、webdriver.ie.driverシステムプロパティで設定する必要があります

テストの自動化にSeleniumを使用しています。私のアプリケーションはIEのみを使用しているため、他のブラウザーでは動作しません。

コード:

import org.openqa.Selenium.ie.InternetExplorerDriver;
import org.openqa.Selenium.By;
import org.openqa.Selenium.WebDriver;
import org.openqa.Selenium.WebElement;

public class Test {
    public static void main(String[] args) {
        final String sUrl = "http://www.google.co.in/";                             
        System.setProperty("webdriver.chrome.driver","C:\\Users\\vthaduri\\workspace\\LDCSuite\\IEDriverServer.exe");
        WebDriver oWebDriver = new InternetExplorerDriver();
        oWebDriver.get(sUrl);
        WebElement oSearchInputElem = oWebDriver.findElement(By.name("q")); // Use name locator to identify the search input field.
        oSearchInputElem.sendKeys("Selenium 2");
        WebElement oGoogleSearchBtn = oWebDriver.findElement(By.xpath("//input[@name='btnG']"));  
        oGoogleSearchBtn.click();

        try {
            Thread.sleep(5000);
        } catch(InterruptedException ex) {
            System.out.println(ex.getMessage());
        }
        oWebDriver.close();
    }    
}

そして、ここに私が得ているエラーがあります

ドライバーの実行可能ファイルへのパスは、webdriver.ie.driverシステムプロパティで設定する必要があります。詳細については、 https://github.com/SeleniumHQ/Selenium/wiki/InternetExplorerDriver を参照してください。最新バージョンは http://www.seleniumhq.org/download/ 2012年6月12日4:18:42 PM org.Apache.http.implからダウンロードできます。 client.DefaultRequestDirector tryExecute INFO:リクエストの処理中にI/O例外(Java.net.SocketException)がキャッチされました:ソフトウェアにより接続が中断されました:recv failed 2012年6月12日4:18:42 PM org.Apache.http .impl.client.DefaultRequestDirector tryExecute

誰かがこれを手伝ってくれますか?

57
vkrams
  1. システム上でInternetExplorerドライバーの実行可能ファイルが必要になります。ヒントのあるソースからダウンロードします( http://www.seleniumhq.org/download/ )解凍し、見つけられる場所に置きます。私の例では、C:\Selenium\iexploredriver.exeに配置すると仮定します

  2. 次に、システムで設定する必要があります。 Seleniumプロジェクトから貼り付けたJavaコードは次のとおりです。

    File file = new File("C:/Selenium/iexploredriver.exe");
    System.setProperty("webdriver.ie.driver", file.getAbsolutePath());
    WebDriver driver = new InternetExplorerDriver();
    

基本的に、このプロパティを設定する必要がありますbeforeドライバーを初期化します

73
Pavel Janicek

エラーメッセージは言う

「ドライバの実行可能ファイルへのパスはwebdriver.ie.driverシステムプロパティで設定する必要があります。」

webdriver.chrome.driver」プロパティでChromeドライバーのパスを設定しています。 InternetExplorerDriverの場合、ファイルの場所を設定していません。そのためには、「webdriver.ie.driver」プロパティを設定する必要があります。

これらのプロパティは、シェルで、maven経由で、またはIDEを-DpropertyName = Valueで設定できます

-Dwebdriver.ie.driver="C:/.../IEDriverServer.exe" 

Windowsマシンではパスにスペースまたはスラッシュが含まれているため、引用符を使用する必要があります。または、スラッシュを逆にする場合は、文字列文字列エスケーププレフィックスを使用します。

あなたも使うことができます

System.setProperty("webdriver.ie.driver","C:/.../IEDriverServer.exe"); 

コード内。

13
Martin Spamer

ローカルマシンに依存しないように、ドライバーファイルをプロジェクトに直接配置しました。

final File file = new File("driver/chromedriver_2_22_mac");
System.setProperty("webdriver.chrome.driver", file.getAbsolutePath());

driver = new ChromeDriver();
2
feed.me

春の場合:

File inputFile = new ClassPathResource("\\chrome\\chromedriver.exe").getFile();
System.setProperty("webdriver.chrome.driver",inputFile.getCanonicalPath());
1
Ran Adler

InternetExplorerドライバー実行可能ファイルをシステムにダウンロードし、ソースからダウンロードする必要があります( http://code.google.com/p/Selenium/downloads/list )コンピューターのどこかの場所に。私の例では、D:\ iexploredriver.exeに配置します

次に、Eclipseメインクラスに以下のコードを書きます

   System.setProperty("webdriver.ie.driver", "D:/iexploredriver.exe");
   WebDriver driver = new InternetExplorerDriver();
0
Ankit jain