WebDriver-无效参数:无效的“到期”

时间:2019-12-24 05:00:01

标签: php selenium-webdriver codeception

我正在尝试与$I->saveSessionSnapshot($session_name)$I->loadSessionSnapshot($session_name)重用登录会话,但是在第二项测试中出现以下错误:

  [Facebook\WebDriver\Exception\UnrecognizedExceptionException] invalid argument: invalid 'expiry'
  (Session info: chrome=79.0.3945.88)
  (Driver info: chromedriver=79.0.3945.36 (3582db32b33893869b8c1339e8f4d9ed1816f143-refs/branch-heads/3945@{#614}),platform=Windows NT 10.0.17763 x86_64)

问题在于,保存的PHPSESSID cookie具有null作为expiry,其中应该是整数。

这是WebDriver或Codeception中的问题吗?我该如何克服?

作为一种解决方法,我已将vendor/facebook/webdriver/lib/Cookie.php中的以下代码更改为:

    /**
     * @return array
     */
    public function toArray()
    {
      return $this->cookie;
    }

收件人:

    /**
     * @return array
     */
    public function toArray()
    {
      $cookie = $this->cookie;
      if ($cookie['expiry'] === null) {
        unset($cookie['expiry']);
      }
      return $cookie;
    }

显然更改供应商源文件是一个坏主意,那么解决此问题的批准方法是什么?

0 个答案:

没有答案