developer tip

드라이버 실행 파일은 webdriver.ie.driver 시스템 속성으로 설정해야합니다.

optionbox 2020. 12. 25. 09:38
반응형

드라이버 실행 파일은 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 org.apache.http.impl.client.DefaultRequestDirector tryExecute INFO : I / O 예외 (java. net.SocketException) 요청을 처리 할 때 포착 됨 : 소프트웨어로 인해 연결이 중단됨 : recv 실패 2012 년 6 월 12 일 오후 4:18:42 org.apache.http.impl.client.DefaultRequestDirector tryExecute

누군가 나를 도울 수 있습니까?


  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();
    

기본적으로 드라이버를 초기화 하기 전에이 속성을 설정 해야 합니다.


오류 메시지는 다음과 같습니다.

"드라이버 실행 파일의 경로는 webdriver.ie.driver 시스템 속성 으로 설정해야합니다 ."

" webdriver.chrome.driver "속성 을 사용하여 Chrome 드라이버의 경로를 설정합니다 . InternetExplorerDriver의 경우 파일 위치를 설정하지 않고 " webdriver.ie.driver "속성을 설정해야합니다 .

-DpropertyName = Value를 사용하여 셸, maven 또는 IDE를 통해 이러한 속성을 설정할 수 있습니다.

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

Windows 시스템에서 경로에 공백이나 슬래시가 있기 때문에 따옴표를 사용해야합니다. 그렇지 않으면 슬래시를 반대로 바꾸어야합니다. 그렇지 않으면 문자열 문자열 이스케이프 접두사입니다.

당신은 또한 사용할 수 있습니다

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

코드 내부.


로컬 컴퓨터에 대한 종속성을 얻기 위해 드라이버 파일을 프로젝트에 직접 넣었습니다.

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

driver = new ChromeDriver();

봄 :

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

You will need have to download InternetExplorer driver executable on your system, download it from the source (http://code.google.com/p/selenium/downloads/list) after download unzip it and put on the place of somewhere in your computer. In my example, I will place it to D:\iexploredriver.exe

Then you have write below code in your eclipse main class

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

ReferenceURL : https://stackoverflow.com/questions/10995314/driver-executable-must-be-set-by-the-webdriver-ie-driver-system-property

반응형