Chromdriver2.21.2失败"没有这样的会话"

ian*_*ner 5 selenium google-chrome jasmine selenium-chromedriver

我试图为我的网页进行自动化测试,我正在使用Jasmine与selenium一起使用.

当测试chrome(使用chromedriver)时,我不可预测地得到下面的错误.它经常发生,当我运行测试套件时,它几乎没有完成.

我发现了这个错误的证据,但无法找到一个可靠的答案:https://bugs.chromium.org/p/chromedriver/issues/detail?id = 732(授予这是铬,我使用铬)

WebDriverError: no such session
  (Driver info: chromedriver=2.21.371459 (36d3d07f660ff2bc1bf28a75d1cdabed0983e7c4),platform=Mac OS X 10.11.5 x86_64)
    at WebDriverError (/Users/XXXXXXX/Documents/sweetmeeting/node_modules/selenium-webdriver/lib/error.js:27:10)
    at Object.checkLegacyResponse (/Users/XXXXXXX/Documents/sweetmeeting/node_modules/selenium-webdriver/lib/error.js:639:15)
    at parseHttpResponse (/Users/XXXXXXX/Documents/sweetmeeting/node_modules/selenium-webdriver/http/index.js:538:13)
    at /Users/XXXXXXX/Documents/sweetmeeting/node_modules/selenium-webdriver/http/index.js:472:11
    at ManagedPromise.invokeCallback_ (/Users/XXXXXXX/Documents/sweetmeeting/node_modules/selenium-webdriver/lib/promise.js:1379:14)
    at TaskQueue.execute_ (/Users/XXXXXXX/Documents/sweetmeeting/node_modules/selenium-webdriver/lib/promise.js:2913:14)
    at TaskQueue.executeNext_ (/Users/XXXXXXX/Documents/sweetmeeting/node_modules/selenium-webdriver/lib/promise.js:2896:21)
    at /Users/XXXXXXX/Documents/sweetmeeting/node_modules/selenium-webdriver/lib/promise.js:2820:25
    at /Users/XXXXXXX/Documents/sweetmeeting/node_modules/selenium-webdriver/lib/promise.js:639:7
    at process._tickCallback (node.js:369:9)
From: Task: WebElement.isDisplayed()
    at Driver.schedule (/Users/XXXXXXX/Documents/sweetmeeting/node_modules/selenium-webdriver/lib/webdriver.js:377:17)
    at WebElement.schedule_ (/Users/XXXXXXX/Documents/sweetmeeting/node_modules/selenium-webdriver/lib/webdriver.js:1744:25)
    at WebElement.isDisplayed (/Users/XXXXXXX/Documents/sweetmeeting/node_modules/selenium-webdriver/lib/webdriver.js:2110:17)
    at driver.findElements.then.error (/Users/XXXXXXX/Documents/sweetmeeting/Test/front_end_testing/spec/dashboard_tester.js:251:34)
    at ManagedPromise.invokeCallback_ (/Users/XXXXXXX/Documents/sweetmeeting/node_modules/selenium-webdriver/lib/promise.js:1379:14)
    at TaskQueue.execute_ (/Users/XXXXXXX/Documents/sweetmeeting/node_modules/selenium-webdriver/lib/promise.js:2913:14)
    at TaskQueue.executeNext_ (/Users/XXXXXXX/Documents/sweetmeeting/node_modules/selenium-webdriver/lib/promise.js:2896:21)
    at /Users/XXXXXXX/Documents/sweetmeeting/node_modules/selenium-webdriver/lib/promise.js:2775:27
    at /Users/XXXXXXX/Documents/sweetmeeting/node_modules/selenium-webdriver/lib/promise.js:639:7
    at process._tickCallback (node.js:369:9)
Run Code Online (Sandbox Code Playgroud)

小智 9

我们也一直在努力解决这个问题很长一段时间,并且最近解决了这个问题,所以我想在这里发布它可以帮助其他人.

事实证明,这与记忆有关.我们在docker容器内运行测试,docker默认dev/shm大小为64mb.增加这个解决了我们的"没有这样的会话"问题.

我们使用docker compose,所以只需将shm_size:256M添加到docker-compose.yml文件中.

  • 有同样的问题,即使是2GB也增加shm!没有帮助我,似乎错误不是由shm大小引起的 (3认同)

Arn*_*rod 6

我最近也遇到过这个例外.它首先似乎也是不确定的,但经过彻底的调查后,我意识到如果你调用ChromeDriver.Close()然后尝试FindElement,它就会确定地发生.

就我而言,ChromeDriver.Close()是在之前测试的异常处理程序中调用的,这是由于计时问题而发生的.这只影响了下一个测试,因此它增加了这个问题的缺点.但正如我所说,我的调查显示它是确定性的.

话虽如此,这是我对该错误的体验.可能是你的情况不同......


归档时间:

查看次数:

6166 次

最近记录:

7 年,9 月 前