【问题标题】:Keep browser window open and reuse - Codeception Selenium Chrome Debian保持浏览器窗口打开并重用 - Codeception Selenium Chrome Debian
【发布时间】:2020-11-20 17:38:49
【问题描述】:

我正在运行 Codeception 测试。出于显示目的,我想在单个 Chrome 浏览器 [或 FF idc] 上驱动测试,并在测试运行之间保持浏览器打开。我知道有办法做到这一点[我做到了,但忘了怎么做!]。

我正在跑步: Ubuntu 20 谷歌浏览器 86

目前,测试运行良好,GUI 弹出,但在运行结束时关闭。

我认为这与参数“browserSessionReuse”或“restart”或“detach”有关,但我不知道该放在哪里,尤其是在 PHP 中!

我怎样才能只使用一个浏览器并继续使用它,它是 Codeception?

yml:

class_name: AcceptanceTester
modules:
  enabled:
    - \Helper\Acceptance
    - WebDriver
  config:
    WebDriver:
      url: 'http://xx123xxx.com/'
      port: 4444
      browser: chrome

我如何启动 Selenium:

java -Dwebdriver.chrome.driver=/var/www/html/wp-content/plugins/WPbdd/chromedriver -jar selenium.jar

【问题讨论】:

标签: selenium selenium-webdriver selenium-chromedriver codeception


【解决方案1】:

很抱歉没有准确地回答你想要的,但我认为没有办法做到这一点。

但我建议您使用 codeception 控制台来运行一对一的验收测试说明,这样当您看到每个命令正在执行时,这将使浏览器保持打开状态。

如果你使用 Docker,我建议你看看这个链接,在容器中使用 selenium 和 Chrome Drive,你可以通过 NoVNC 访问界面(浏览器中的远程桌面访问): https://hub.docker.com/r/selenium/hub

如果您在运行 Docker 方面需要帮助,请随时与我联系。

【讨论】:

    【解决方案2】:

    更新:最初的问题是关于在测试之间而不是在测试运行之间重新启动。

    新答案:

    Codeception WebDriver 模块无法做到这一点,但您可以自己实现此类功能。

    您必须创建自己的模块,使其成为extend WebDriver,覆盖_after_afterSuite 方法以防止它们停止浏览器实例。 然后实现将 selenium 会话 ID 存储到 _afterSuite 中的文件并更新 _initializeSession 方法以从文件中读取会话 ID 并将其传递给 RemoteWebDriver 的构造函数,您还必须从 RemoteWebDriver::create 方法中复制一些核心。

    原始答案:

    这是默认行为!
    默认情况下,WebDriver 模块为所有测试和only deletes cookies between tests 重用相同的浏览器会话。
    可以通过设置restart: true参数使其在测试之间重启浏览器。

    另一种重启浏览器的方法是在helpers中调用_restart method,你的Acceptance Helper有没有可能正在执行它?

    【讨论】:

    • 我的意思是在“测试运行”而不是“测试”之间保持打开状态,我改变了它。 Selenium 没有简单的方法来获取已经打开的窗口。我还没有想出在同一个浏览器中多次运行测试套件的方法。 Selenium 总是启动一个新会话。
    • Codeception docs: restart - 设置为 false(默认)以对所有测试使用相同的浏览器窗口,或设置为 true 以为每个测试创建一个新窗口。在任何情况下,当所有测试完成后,浏览器窗口就会关闭
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-08-21
    • 1970-01-01
    • 1970-01-01
    • 2022-10-02
    • 2014-08-29
    • 2021-06-10
    相关资源
    最近更新 更多