[当我尝试通过ssh手动或通过Jenkins(存在Safari的计算机是远程从属机器)运行测试时,我在针对Safari 11运行Ruby / RSpec测试时遇到了麻烦。
执行测试时,出现以下错误:
Selenium::WebDriver::Error::WebDriverError:
unable to connect to safaridriver 127.0.0.1:7050
奇怪的是,当我直接登录到Mac计算机时,我能够运行测试。这使我得出结论,可能有一些权限,默认情况下,它会禁止从ssh会话执行,但不确定为什么?
据我所知,Safari驱动程序是Safari 10+的一部分,因此不再作为扩展安装。>
更新:我发现应该通过测试生成的safaridriver可执行文件在通过ssh登录时由于某种原因而无法生成。示例:
/usr/bin/safaridriver -p 7050
它将直接以非零的退出代码终止,而直接在计算机上运行相同命令将在前台运行safaridriver。由于我希望Jenkins在此计算机上运行测试作业,因此我想解决此问题的想法是在此计算机上启动safaridriver(通过cron或launchctl),然后使用该实例将其连接到我的测试中。但是,到目前为止,我无法使测试(Selenium / Capybara)重新使用现有的safaridriver,而不是始终尝试在其他端口上生成新的safaridriver。任何对此的想法也将不胜感激。
这是我的环境:操作系统:MacOS Sierra 10.12.6浏览器:Safari 11.0.2
提前感谢
当我尝试通过ssh手动或通过Jenkins(存在Safari的计算机是远程从属机器)运行测试时,我无法针对Safari 11运行Ruby / RSpec测试。执行测试时,...