代码之家  ›  专栏  ›  技术社区  ›  Andrei Suvorkov

执行selenium test时浏览器无法在Jenkins中打开

  •  0
  • Andrei Suvorkov  · 技术社区  · 5 年前

    我想在年开始工作 Jenkins ,它执行 Selenium 脚本。几个月来它一直工作得很好,但今天却因为一个未知的原因停止了工作。这项工作像往常一样开始第一次考试,然后就结巴了。我没有收到任何错误,只是在这之后什么也没有发生:

    TEST STARTED: test
    -------------------------------------------------------------------
    [main] INFO net.serenitybdd.core.Serenity - TEST NUMBER: 1
    März 26, 2019 3:02:23 NACHM. org.openqa.selenium.remote.DesiredCapabilities chrome
    INFO: Using `new ChromeOptions()` is preferred to `DesiredCapabilities.chrome()`
    Starting ChromeDriver 73.0.3683.68 (47787ec04b6e38e22703e856e101e840b65afe72) on port 46182
    Only local connections are allowed.
    Please protect ports used by ChromeDriver and related test frameworks to prevent access by malicious code.
    März 26, 2019 3:02:25 NACHM. org.openqa.selenium.remote.ProtocolHandshake createSession
    INFO: Detected dialect: W3C
    

    我意识到,每次我在chrome开始工作时 Google Chrome 进程添加到任务管理器中,所以我假设chrome窗口出现了。另外,当我终止这个过程时,我得到的是:

    ...
    [1553694146.113][SEVERE]: Timed out receiving message from renderer: 10.000
    [1553694146.113][WARNING]: screenshot failed, retrying
    [1553694156.113][SEVERE]: Timed out receiving message from renderer: 10.000
    [1553694166.118][SEVERE]: Timed out receiving message from renderer: 10.000
    [1553694166.118][WARNING]: screenshot failed, retrying
    [main] WARN net.thucydides.core.webdriver.WebDriverFacade - Failed to take screenshot (unknown error: session deleted because of page crash
    from unknown error: cannot determine loading status
    from tab crashed
     (Session info: chrome=73.0.3683.86)
     (Driver info: chromedriver=73.0.3683.68 (47787ec04b6e38e22703e856e101e840b65afe72),platform=Windows NT 10.0.17763 x86_64) (WARNING: The server did not provide any stacktrace information)
    Command duration or timeout: 0 milliseconds
    Build info: version: '3.141.59', revision: 'e82be7d358', time: '2018-11-14T08:17:03'
    System info: host: 'DESKTOP-5QTQGUC', ip: '192.168.178.23', os.name: 'Windows 10', os.arch: 'amd64', os.version: '10.0', java.version: '11.0.1'
    Driver info: org.openqa.selenium.remote.RemoteWebDriver
    Capabilities {acceptInsecureCerts: false, acceptSslCerts: false, applicationCacheEnabled: false, browserConnectionEnabled: false, browserName: chrome, chrome: {chromedriverVersion: 73.0.3683.68 (47787ec04b6e3..., userDataDir: C:\WINDOWS\TEMP\scoped_dir5...}, cssSelectorsEnabled: true, databaseEnabled: false, goog:chromeOptions: {debuggerAddress: localhost:3697}, handlesAlerts: true, hasTouchScreen: false, javascriptEnabled: true, locationContextEnabled: true, mobileEmulationEnabled: false, nativeEvents: true, networkConnectionEnabled: false, pageLoadStrategy: normal, platform: XP, platformName: XP, proxy: Proxy(), rotatable: false, setWindowRect: true, strictFileInteractability: false, takesHeapSnapshot: true, takesScreenshot: true, timeouts: {implicit: 0, pageLoad: 300000, script: 30000}, unexpectedAlertBehaviour: ignore, unhandledPromptBehavior: ignore, version: 73.0.3683.86, webStorageEnabled: true}
    Session ID: da5e7153b21e4cb075843ac4e541ab6f)
    [main] ERROR net.thucydides.core.steps.ConsoleLoggingListener -
    ...
    

    我试着更新 所有的插件,更新了我的浏览器和网络驱动程序,关闭了防火墙和防病毒软件。到目前为止没有任何帮助。我仍然可以通过在本地运行所有测试 ide 也不知道出了什么问题 詹金斯 ,我无法运行我的测试。

    PS在firefox中很好用,但我也需要chrome

    0 回复  |  直到 5 年前
        1
  •  1
  •   Andrei Suvorkov    5 年前

    所以。我发现了一个问题,这是一个计时错误。可以找到更多信息 here . 我将尝试将webdriver和chrome降级到旧版本,并分享结果。

    编辑: 我已将我的Chrome降级为 Version 72.0.3626.81 和chromedriver ChromeDriver 2.46 . 效果很好。

    我发现阻止Chrome自动更新到最新版本有点棘手。 Here 你可以找到一些有用的技巧来处理它。我个人选择文件夹重命名)

        2
  •  1
  •   Cherry    4 年前

    对于Windows:

    我想补充一下Jenkins何时将在浏览器中显示正在运行的自动化测试用例。

    首先,您不应该将Jenkins安装为windows应用程序。

    1) 在windows中,服务选择Jenkins的服务

    3) 您必须切换NoInteractiveServices注册表项

    最佳方法 您应根据war文件部署Jenkins,如下所示:

    2) 通过命令提示符部署它:java-jar{directoryOfJenkinsFileInWindows}/詹金斯战争

    3) 现在你可以通过 http://localhost:8080

        3
  •  0
  •   undetected Selenium    5 年前

    März 26, 2019 3:02:23 NACHM. org.openqa.selenium.remote.DesiredCapabilities chrome
    INFO: Using `new ChromeOptions()` is preferred to `DesiredCapabilities.chrome()`
    Starting ChromeDriver 73.0.3683.68 (47787ec04b6e38e22703e856e101e840b65afe72) on port 46182
    Only local connections are allowed.
    Please protect ports used by ChromeDriver and related test frameworks to prevent access by malicious code.
    März 26, 2019 3:02:25 NACHM. org.openqa.selenium.remote.ProtocolHandshake createSession
    INFO: Detected dialect: W3C
    

    …表示您使用了 DesiredCapabilities() 但当会话创建时,检测到的方言是 W3C公司

    作为一般意识:

    • 铬铁 抱怨
    • / 火狐 / 抱怨。

    等级和铸造 但是在初始化时,您调用了 FirefoxDriver()

    WebDriver driver =  new FirefoxDriver();
    

    解决方案

    更改的初始化 网络驱动程序 作为:

    WebDriver driver = new ChromeDriver();
    
        4
  •  0
  •   Rajagopal V    5 年前

    主要是由于兼容性问题(selenium和chrome驱动程序版本)。请参考 http://chromedriver.chromium.org/downloads

    Selenium Timed out receiving message from renderer