2017-02-02 1 views
0

우분투 VM에서 실행되도록 셀렌 테스트를 올바르게 구성하는 방법을 알 수 없습니다. Windows에서 Eclipse IDE가있는 곳에서는 제대로 작동합니다.자바 프로젝트에서 Selenium Chromedriver timeout 문제가 발생했습니다.

@BeforeClass(alwaysRun = true) 
    public void setUp() throws Exception { 


     if (SystemUtils.IS_OS_LINUX)  
      System.setProperty("webdriver.chrome.driver", "/usr/bin/selenium/chromedriver/chromedriver"); 

     if(SystemUtils.IS_OS_WINDOWS) 
      System.setProperty("webdriver.chrome.driver", ""+System.getProperty("user.dir").toString()+"/lib/chromedriver.exe"); 
     driver = new ChromeDriver();   

    System.out.println(System.getProperty("portletToTest")); 
    baseUrl = "http://www.google.it"; 
    driver.manage().timeouts().implicitlyWait(30, TimeUnit.SECONDS); 
    } 
    @Test 
    public void test() throws Exception { 
     driver.get(baseUrl + "/"); 

내가 점점 계속 오류가 TestNG의 보고서에서,이 인 (로컬 호스트의 포트를 제외하고 : : 매번 달라질 내가 그것을 실행)

여기 는 testNGclass의 자바 코드의 일부이다
org.openqa.selenium.WebDriverException: Timed out waiting for driver server to start. 
Build info: version: 'unknown', revision: '1969d75', time: '2016-10-18 09:43:45 -0700' 
System info: host: 'esvn', ip: '192.168.5.182', os.name: 'Linux', os.arch: 'amd64', os.version: '3.5.0-54-generic', java.version: '1.8.0_121' 
Driver info: driver.version: ChromeDriver 
    at org.openqa.selenium.remote.service.DriverService.waitUntilAvailable(DriverService.java:178) 
    at org.openqa.selenium.remote.service.DriverService.start(DriverService.java:166) 
    at org.openqa.selenium.remote.service.DriverCommandExecutor.execute(DriverCommandExecutor.java:78) 
    at org.openqa.selenium.remote.RemoteWebDriver.execute(RemoteWebDriver.java:601) 
    at org.openqa.selenium.remote.RemoteWebDriver.startSession(RemoteWebDriver.java:241) 
    at org.openqa.selenium.remote.RemoteWebDriver.<init>(RemoteWebDriver.java:128) 
    at org.openqa.selenium.remote.RemoteWebDriver.<init>(RemoteWebDriver.java:141) 
    at org.openqa.selenium.chrome.ChromeDriver.<init>(ChromeDriver.java:174) 
    at org.openqa.selenium.chrome.ChromeDriver.<init>(ChromeDriver.java:163) 
    at org.openqa.selenium.chrome.ChromeDriver.<init>(ChromeDriver.java:120) 
    at Automation.profileuserportlet.setUp(Unknown Source) 
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) 
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) 
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) 
    at java.lang.reflect.Method.invoke(Method.java:498) 
    at org.testng.internal.MethodInvocationHelper.invokeMethod(MethodInvocationHelper.java:104) 
    at org.testng.internal.Invoker.invokeConfigurationMethod(Invoker.java:515) 
    at org.testng.internal.Invoker.invokeConfigurations(Invoker.java:217) 
    at org.testng.internal.Invoker.invokeConfigurations(Invoker.java:144) 
    at org.testng.internal.TestMethodWorker.invokeBeforeClassMethods(TestMethodWorker.java:169) 
    at org.testng.internal.TestMethodWorker.run(TestMethodWorker.java:108) 
    at org.testng.TestRunner.privateRun(TestRunner.java:756) 
    at org.testng.TestRunner.run(TestRunner.java:610) 
    at org.testng.SuiteRunner.runTest(SuiteRunner.java:387) 
    at org.testng.SuiteRunner.runSequentially(SuiteRunner.java:382) 
    at org.testng.SuiteRunner.privateRun(SuiteRunner.java:340) 
    at org.testng.SuiteRunner.run(SuiteRunner.java:289) 
    at org.testng.SuiteRunnerWorker.runSuite(SuiteRunnerWorker.java:52) 
    at org.testng.SuiteRunnerWorker.run(SuiteRunnerWorker.java:86) 
    at org.testng.TestNG.runSuitesSequentially(TestNG.java:1293) 
    at org.testng.TestNG.runSuitesLocally(TestNG.java:1218) 
    at org.testng.TestNG.runSuites(TestNG.java:1133) 
    at org.testng.TestNG.run(TestNG.java:1104) 
    at org.testng.TestNG.privateMain(TestNG.java:1434) 
    at org.testng.TestNG.main(TestNG.java:1403) 
Caused by: org.openqa.selenium.net.UrlChecker$TimeoutException: Timed out waiting for [http://localhost:17352/status] to be available after 20008 ms 
    at org.openqa.selenium.net.UrlChecker.waitUntilAvailable(UrlChecker.java:107) 
    at org.openqa.selenium.remote.service.DriverService.waitUntilAvailable(DriverService.java:175) 
    ... 34 more 
Caused by: com.google.common.util.concurrent.UncheckedTimeoutException: java.util.concurrent.TimeoutException 
    at com.google.common.util.concurrent.SimpleTimeLimiter.callWithTimeout(SimpleTimeLimiter.java:143) 
    at org.openqa.selenium.net.UrlChecker.waitUntilAvailable(UrlChecker.java:80) 
    ... 35 more 
Caused by: java.util.concurrent.TimeoutException 
    at java.util.concurrent.FutureTask.get(FutureTask.java:205) 
    at com.google.common.util.concurrent.SimpleTimeLimiter.callWithTimeout(SimpleTimeLimiter.java:130) 
    ... 36 more 

나는 리눅스에서 chromedriver 파일 경로를 점검 했으므로 괜찮습니다. 파일에 실행 권한이 있습니다. 리눅스 컴퓨터에서 chromedriver 실행 파일을 시작해야합니까? 컴파일 된 Java 프로젝트를 실행하는 것 이외의 다른 작업을해야합니까?

답변

0

귀하의 크롬 드라이버는 Chrome 브라우저와 일치하는 올바른 버전이어야합니다.

관련 문제