2017-10-25 13 views
0

저는 Selenium WebDriver의 초보자입니다. 몇 가지 샘플 코드를 발견하고 자체 테스트 프로그램 . 나는 그것을에 문제가 여기에 프로그램이다!Selenium WebDriver/NetBeans 8.1/JDK1.8.0 예외 ChromeDriver Runtime.executionContextCreated의 '컨텍스트'가 잘못되었습니다. "

package test; 

import org.openqa.selenium.WebDriver; 
import org.openqa.selenium.chrome.ChromeDriver; 

public class SeleniumTester { 
    public static void main(String[] args) { 
     try { 
      System.setProperty("webdriver.chrome.driver", "C:\\Program Files\\Selenium\\chromedriver.exe"); 
      WebDriver driver = new ChromeDriver(); 
      driver.get("http://www.oddsportal.com/"); 
      driver.manage().window().maximize(); 
      String str = driver.getCurrentUrl(); 
      System.out.println("The current URL is " + str); 
     } 
     catch (Exception ex) { 
      System.out.println("Encountered exception in SeleniumTester.main() :"); 
      System.out.println(ex.getMessage()); 
     } 
    } 
} 

그것은 잘 컴파일, 먼저 몇 가지 진단 출력, 실행 시작 : 라인에서 다음

"Starting ChromeDriver (v2.9.248315) on port 11716 
October 25, 2017 6:11:22 IP. 
org.openqa.selenium.remote.ProtocolHandshake createSession 
INFO: Detected dialect: OSS" 

그러나 "을 driver.get은 (...); "예외가 발생합니다 :

"Encountered exception in SeleniumTester.main() : 
unknown error: Runtime.executionContextCreated has invalid 'context': {"auxData":{"frameId":"8164.1","isDefault":true},"id":1,"name":"","origin":"://"} 
    (Session info: chrome=61.0.3163.100) 
    (Driver info: chromedriver=2.9.248315,platform=Windows NT 6.3 x86_64) (WARNING: The server did not provide any stacktrace information) 
Command duration or timeout: 0 milliseconds 
Build info: version: '3.6.0', revision: '6fbf3ec767', time: '2017-09-27T16:15:40.131Z' 
System info: host: 'DESKTOP-47EFBCO', ip: '192.168.43.83', os.name: 'Windows 10', os.arch: 'amd64', os.version: '10.0', java.version: '1.8.0_144' 
Driver info: org.openqa.selenium.chrome.ChromeDriver 
Capabilities [{applicationCacheEnabled=false, rotatable=false, chrome={userDataDir=C:\Users\Ilkka\AppData\Local\Temp\scoped_dir12200_17489}, takesHeapSnapshot=true, databaseEnabled=false, handlesAlerts=true, version=61.0.3163.100, platform=XP, browserConnectionEnabled=false, nativeEvents=true, acceptSslCerts=true, locationContextEnabled=true, webStorageEnabled=true, browserName=chrome, takesScreenshot=true, javascriptEnabled=true, platformName=XP, cssSelectorsEnabled=true}] 
Session ID: 31a4a5806225e18533805ed0fbbca392" 

잘못된 컨텍스트에 관한 것입니다. 무슨 뜻이에요? 그것을 고치는 방법? ChromeDriver를 생성하기 위해 다른 생성자를 사용해야할까요? 아이디어, 누구?

+0

크롬 v60-62을 지원합니다. 최신 버전의 chromedriver를 다운로드하고 경로를 지정하십시오. – Atul

+0

빠른 검색에서 https://stackoverflow.com/questions/41832859/selenium-runtime-executioncontextcreated-has-invalid-context와 같은 질문을 가리켰습니다. – Atul

+0

https : //chromedriver.storage.googleapis에서 chromedriver.exe 버전 2.33을 다운로드했습니다. .com/index.html? path = 2.33 /. 그리고 지금 내 테스트 프로그램이 작동합니다! 즉, oddsportal.com의 첫 페이지를 열고 최대화 된 Chrome 창에 표시합니다. 귀하의 조언을 많이 주셔서 감사합니다, Atul! –

답변

0

문제는 이전 버전의 chromedriver 때문일 수 있습니다. 최신 버전의 chromedriver를 다운로드하고 경로를 지정하십시오.

브라우저 버전 및 드라이버 버전 호환성 문제로 인해이 문제가 발생할 수 있습니다. chromedriver page에는 브라우저 버전에 대한 드라이버 호환성이 언급되어 있습니다. 예를 들어, 현재로서는, 페이지 목록 :

최신 릴리스 : ChromeDriver 2.33 이 문제 때문에 chromedriver의 이전 버전이며 대부분의 경우