在mac上运行量角器测试时,我得到了以下错误
Failed to connect to SafariDriver after 10082 ms
Build info: version: '2.53.1', revision: 'a36b8b1',
os.arch: 'x86_64', os.version: '10.12.2', java.version: '1.8.0_101'
Driver info: driver.version: SafariDriver能力:
name: 'Safari',
browserName: 'safari',
logName: 'Safari',
shardTestFiles: true,
maxInstances: 2我们需要一个特殊的旅行司机吗?如果是,我可以从哪里得到它,在.conf文件中应该在哪里声明它。
谢谢!
发布于 2017-01-09 22:07:42
是的,您需要安装一个特殊的旅行司机才能在量角器内启动它。当然,你需要在mac上。量角器本质上是构建在硒之上的一个层,因此您需要安装Safari的selenium驱动程序,它是作为Safari插件实现的。
下面是你需要做的事情:
驱动器现在已安装,并应可用于您的量角器过程。
这是Selenium 2.48的驱动程序。我找不到更新的版本,所以如果这个驱动程序版本没有与当前版本的Protractor一起运行,那么您需要使用基于Selenium 2.48的较旧版本的量角器,或者从源代码构建safari驱动程序。
发布于 2017-01-23 16:12:07
首先,从Safari 10开始,Safari附带了一个新的驱动程序实现。旧的驱动程序(扩展部分)被废弃了。您使用的是macOS 10.12.2,所以这是您的情况。若要在Safari中启用新的驱动程序,请在“开发”菜单中切换“允许远程自动化”复选框。如果您没有此菜单,请在菜单栏中启用它: Preferences > Advanced >。手动启动/usr/bin/safaridriver一次,以授予它所需的权限。
其次,您需要一个3.x版本的Selenium独立服务器,而不是2.53.1。安装它的命令:
sudo webdriver-manager update --versions.standalone 3.0.1首先:
webdriver-manager start --versions.standalone 3.0.1第三,可见性检查在新司机中被打破。因此,像browser.wait(ExpectedConditions.visibilityOf(myElement), 5000);这样的东西不起作用,导致了UnsupportedCommandException。为了解决这个问题,您可以尝试安装Safari技术预览并在那里运行测试(将'safari.options': { technologyPreview: true }添加到功能中)。但对我来说,预览的效果甚至比发行版还要糟糕。量角器说它无法在页面上找到角,因为他们改变了window.name,使其在第19版中的跨原点导航之后被清除。如果你碰巧找到办法让它发挥作用,请告诉我。
下面是一些你应该检查的链接,因为我可能漏掉了什么。
https://stackoverflow.com/questions/41513352
复制相似问题