【问题标题】:jenkins selenium do not run test headlesslyjenkins selenium 不会无头运行测试
【发布时间】:2017-06-05 17:51:17
【问题描述】:

我正在使用 jenkins 运行 pytests 硒测试。我在本地机器上运行了测试它可以工作。但是当我通过 jenkins 运行时,它在远程 jenkins 机器上无头运行(在远程 jenkins 机器上创建工作区),并且它因测试错误而失败,例如“元素不可见”或“由于元素不可点击而导致超时异常”。 在此之后,我直接在工作区中的远程机器(Windows 服务器)上运行测试。它启动 chrome 浏览器并运行测试并通过。

  1. 为什么通过 jenknis 运行时会无头运行测试?
  2. 我可以让它在运行 jenkins 时强制打开浏览器吗?
  3. 为什么在 jenkins 中无头运行时测试会失败?

【问题讨论】:

    标签: selenium jenkins selenium-webdriver service headless-browser


    【解决方案1】:

    我假设您的 Jenkins 在 Windows 下的那台机器上作为服务运行,此时您可能想尝试两件事:

    1. 在服务中指定本地系统帐户并选中允许服务与桌面交互。更多关于如何在here 中进行操作。但是,它可能会导致其他问题。
    2. WAR file 运行您的 jenkins 实例,如果您在从属计算机上运行测试:从命令行启动 jenkins slave。

    【讨论】:

    • 选项 1 不启动浏览器。是否必须通过cmd运行war文件?我只想在运行测试时启动浏览器
    • 1.您是否尝试过使用您的帐户和复选框来启动服务? 2. 就像我说的,我认为这里的主要问题是您将 Jenkins 作为服务运行,您可以尝试的另一件事是在这台机器上建立 grid\node 并使用 RemoteWebDriver
    • 我想如果我们只是将 jenkins 作为服务运行是没有办法的。我必须从命令行运行war文件,然后它会启动浏览器。
    猜你喜欢
    • 1970-01-01
    • 2020-08-30
    • 2017-04-05
    • 2013-01-31
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-01-04
    相关资源
    最近更新 更多