2016-10-24 38 views
3

我一直很高興地使用量角器3.3.0與chromedriver 2.21,直到Chrome版本54破壞它。根據interwebs的建議,我更新了量角器4.0.9和chromedriver 2.24,現在我無法使用量角器來運行我的測試。它看起來像它會啓動,閃爍着瀏覽器窗口,然後拋出這個...升級到量角器4.0.9後出現「Unable to connect to renderer」。測試不會運行。任何想法爲什麼?

堆棧跟蹤:

[09:51:27] I/direct - Using ChromeDriver directly... 
[09:51:27] I/launcher - Running 1 instances of WebDriver 
[09:51:28] E/launcher - session not created exception 
from disconnected: unable to connect to renderer 
    (Session info: chrome=54.0.2840.71) 
    (Driver info: chromedriver=2.24.417412 (ac882d3ce7c0d99292439bf3405780058fcca0a6),platform=Mac OS X 10.12.0 x86_64) 
[09:51:28] E/launcher - SessionNotCreatedError: session not created exception 
from disconnected: unable to connect to renderer 
    (Session info: chrome=54.0.2840.71) 
    (Driver info: chromedriver=2.24.417412 (ac882d3ce7c0d99292439bf3405780058fcca0a6),platform=Mac OS X 10.12.0 x86_64) 
    at WebDriverError (/Users/gregorybuchanan/.nvm/versions/node/v4.2.6/lib/node_modules/protractor/node_modules/selenium-webdriver/lib/error.js:27:10) 
    at SessionNotCreatedError (/Users/gregorybuchanan/.nvm/versions/node/v4.2.6/lib/node_modules/protractor/node_modules/selenium-webdriver/lib/error.js:308:10) 
    at Object.checkLegacyResponse (/Users/gregorybuchanan/.nvm/versions/node/v4.2.6/lib/node_modules/protractor/node_modules/selenium-webdriver/lib/error.js:639:15) 
    at parseHttpResponse (/Users/gregorybuchanan/.nvm/versions/node/v4.2.6/lib/node_modules/protractor/node_modules/selenium-webdriver/http/index.js:538:13) 
    at /Users/gregorybuchanan/.nvm/versions/node/v4.2.6/lib/node_modules/protractor/node_modules/selenium-webdriver/http/index.js:472:11 
    at ManagedPromise.invokeCallback_ (/Users/gregorybuchanan/.nvm/versions/node/v4.2.6/lib/node_modules/protractor/node_modules/selenium-webdriver/lib/promise.js:1379:14) 
    at TaskQueue.execute_ (/Users/gregorybuchanan/.nvm/versions/node/v4.2.6/lib/node_modules/protractor/node_modules/selenium-webdriver/lib/promise.js:2913:14) 
    at TaskQueue.executeNext_ (/Users/gregorybuchanan/.nvm/versions/node/v4.2.6/lib/node_modules/protractor/node_modules/selenium-webdriver/lib/promise.js:2896:21) 
    at /Users/gregorybuchanan/.nvm/versions/node/v4.2.6/lib/node_modules/protractor/node_modules/selenium-webdriver/lib/promise.js:2820:25 
    at /Users/gregorybuchanan/.nvm/versions/node/v4.2.6/lib/node_modules/protractor/node_modules/selenium-webdriver/lib/promise.js:639:7 
From: Task: WebDriver.createSession() 
    at Function.createSession (/Users/gregorybuchanan/.nvm/versions/node/v4.2.6/lib/node_modules/protractor/node_modules/selenium-webdriver/lib/webdriver.js:329:24) 
    at Driver (/Users/gregorybuchanan/.nvm/versions/node/v4.2.6/lib/node_modules/protractor/node_modules/selenium-webdriver/chrome.js:778:38) 
    at Direct.getNewDriver (/Users/gregorybuchanan/.nvm/versions/node/v4.2.6/lib/node_modules/protractor/built/driverProviders/direct.js:68:26) 
    at Runner.createBrowser (/Users/gregorybuchanan/.nvm/versions/node/v4.2.6/lib/node_modules/protractor/built/runner.js:198:43) 
    at /Users/gregorybuchanan/.nvm/versions/node/v4.2.6/lib/node_modules/protractor/built/runner.js:277:30 
    at _fulfilled (/Users/gregorybuchanan/.nvm/versions/node/v4.2.6/lib/node_modules/protractor/node_modules/q/q.js:834:54) 
    at self.promiseDispatch.done (/Users/gregorybuchanan/.nvm/versions/node/v4.2.6/lib/node_modules/protractor/node_modules/q/q.js:863:30) 
    at Promise.promise.promiseDispatch (/Users/gregorybuchanan/.nvm/versions/node/v4.2.6/lib/node_modules/protractor/node_modules/q/q.js:796:13) 
    at /Users/gregorybuchanan/.nvm/versions/node/v4.2.6/lib/node_modules/protractor/node_modules/q/q.js:556:49 
    at runSingle (/Users/gregorybuchanan/.nvm/versions/node/v4.2.6/lib/node_modules/protractor/node_modules/q/q.js:137:13) 
[09:51:28] E/launcher - Process exited with error code 199 

我找不到任何引用這個問題...任何想法?

  • MACOS塞拉利昂
  • 鉻54
  • 量角器4.0.9
  • 硒2.53.1
  • 節點4.2.6

我conf.js文件:

exports.config = { 
    seleniumAddress: 'http://localhost:4444/wd/hub', 
    framework: 'jasmine2', 
    suites: { 
    views: './*_view_spec.js', 
    forms: './*_form_spec.js', 
    active: ['./registration_spec.js', './onboarding_spec.js'], 
    all: './*_spec.js', 
    current: './registration_spec.js' 
    }, 
    specs: ['./*_spec.js'], 
    jasmineNodeOpts: { 
    showColors: false 
    }, 
    directConnect: true, 
    capabilities: { 
    chromeOptions: { 
      args: ['--no-sandbox', '--user-data-dir=ProtractorTestProfile','--prompt-for-external-extensions=false', '--load-extension=extension-debug/development/chrome'] 
      }, 
    browserName: 'chrome' 
    }, 
    params: { 
    environment: { 
     api: 'dev', 
     baseUrl: 'http://webapp-dev.xxxxxxx.com/#/' 
    } 
    }, 
    onPrepare: function() { 
    browser.driver.manage().window().setSize(1280, 1024); 
    var disableNgAnimate = function() { 
     angular.module('disableNgAnimate', []).run(['$animate', function($animate) { 
     $animate.enabled(false); 
     }]); 
    }; 

    browser.addMockModule('disableNgAnimate', disableNgAnimate); 

    browser.getCapabilities().then(function(caps) { 
     browser.params.browser = caps.get('browserName'); 
    }); 
    } 
}; 

回答

0

我無法弄清楚這一點,並不能再燒一次嘗試。完整/全新的macOS安裝完成了。

0

怎麼有你更新了鉻驅動程序?通過使用:

webdriver-manager update --versions.chrome 2.24 ? 

我有這個完全一樣的問題,我從http://chromedriver.storage.googleapis.com/index.html?path=2.24/下載Chrome驅動程序版本的文件解壓到我的硒的文件夾(在/ usr/local/lib目錄/ node_modules/webdriver的經理/硒解決/)並刪除舊的。

我相信有一些錯誤使用命令行更新Chrome驅動程序,請參見:https://github.com/angular/webdriver-manager/issues/102

+0

感謝您的響應。我嘗試了所有的東西....事實證明,我的機器的地下室深處存在一些奇怪的問題。我做了全新的安裝,現在我又恢復了業務。 – TheCulprit

7

我有同樣的問題,事實證明,問題是我的/etc/hosts文件。我有

#<ip-address> <hostname.domain.org> <hostname> 
127.0.0.1  localhost.localdomain hostname 
::1    localhost.localdomain hostname 

,當它被認爲是

#<ip-address> <hostname.domain.org> <hostname> 
127.0.0.1  localhost.localdomain localhost 
::1    localhost.localdomain localhost 

所以Selenium服務器以爲你連接到它從一個遠程地址或東西,堵住了連接。

這也可能是爲什麼全新的macOS重新安裝可以解決您的問題。

希望這可以幫助有人在未來看到這個!

0

我有同樣的問題,並重置主機,然後使用

chrome://net-internals/#sockets 

那會做的伎倆清除插座。

這不是一個硒或一個webdriver的問題,只是與鉻插座/主機緩衝有關。

0

我來到這裏的同一個問題。有一天,我運行測試很好,有一天我打開IDE,再次運行測試,並吐出這個錯誤。當我殺掉Chrome,ChromeDriver和Eclipse進程時,我偶然發現了一個解決方案,將我從隨機選擇的Chrome驅動程序版本中複製出來,然後重新啓動它們,並由於某種原因重新開始工作。不幸的是,我不知道這個問題的根源。

0

我在Chrome: Version 62.0.3202.75 (Official Build) (64-bit)ChromeDriver Version: 2.32上看到相同的問題。我只是遵循這些步驟,我能夠成功運行我的測試

如果您在頁面對象或測試中使用browser.manage().window().maximize();或任何帶有browser.manage()的東西,請嘗試刪除它們並在量角器中使用chrome功能。 conf.js.

下面是一個例子:

capabilities: { 
 
     browserName: 'chrome', 
 
     chromeOptions: { 
 
      // binary: 'PATH/To/your/binary', 
 
      args: [ 
 
       '--disable-infobars', "--disable-gpu", "--start-maximized", '--disable-extensions' 
 
      ], 
 
      prefs: { 
 
       // disable chrome's annoying password manager 
 
       'profile.password_manager_enabled': false, 
 
       'credentials_enable_service': false, 
 
       'password_manager_enabled': false 
 
      } 
 
     } 
 
    }

相關問題