yii 如何使用Selenium webdriver获取浏览器会话ID

xyhw6mcr  于 2022-11-09  发布在  其他
关注(0)|答案(2)|浏览(233)

我正在使用selenium webdriver(php-webdriver-bindings Yii扩展名),我正在尝试获取浏览器的sessionId(测试将使用的那个)。我以为我可以通过webdriver获取这个,但似乎不是这样。Webdriver有一个sessionId,但这不是测试浏览器正在使用的那个。
我试图在测试运行之前登录,以允许我的测试成为一个经过身份验证的用户,这将允许他们访问我正在测试的页面。
我已经研究和测试了几天,现在我不知所措。任何帮助将不胜感激。

  • 谢谢-谢谢
5vf7fwbs

5vf7fwbs1#

您可以强制转换为一个具体的类型,例如RemoteWebDriver,它们都是从该类型继承的,并且还实现getSessionId:

((RemoteWebDriver) driver).getSessionId()
zzoitvuj

zzoitvuj2#

我在Java中遇到过这个问题,但是仔细检查源代码后,我注意到我使用的驱动程序被示例化为WebDriver对象,在将其更改为RemoteWebDriver对象后,.getSessionId()方法被公开,driver.getSessionId()如预期的那样返回了会话ID。
我不确定这将如何转换为PHP,但我建议返回并检查以确保您的驱动程序是RemoteWebDriver对象,而不是WebDriver对象。

相关问题