【发布时间】:2021-01-01 15:07:24
【问题描述】:
我想在 safari 浏览器上运行我的 selenium/java 脚本。
本地运行工作正常(我能够看到 safari 启动和脚本工作正常)。
但是当我尝试通过 Jenkins 运行它时,我遇到了一个问题。此语句出错,不启动 safariBrowser driver = new SafariDriver(options);
请注意,当我登录到 VM 并尝试在 VM 上运行时,我能够正常运行脚本。但是当脚本通过 Jenkins 触发时,它会出错。
这是我的代码:
SafariOptions options = new SafariOptions();
options.setCapability(CapabilityType.SUPPORTS_JAVASCRIPT, "true");
driver = new SafariDriver(options);
抛出错误:
org.openqa.selenium.WebDriverException:
java.net.ConnectException: Failed to connect to localhost/127.0.0.1:9504
Build info: version: '3.12.0', revision: '7c6e0b3', time: '2018-05-08T14:04:26.12Z'
System info: host: 'mac10-14-886479', ip: '10.0.10.253', os.name: 'Mac OS X', os.arch: 'x86_64', os.version: '10.14.6', java.version: '1.8.0_181'
Driver info: driver.version: SafariDriver
Caused by: java.net.ConnectException: Failed to connect to localhost/127.0.0.1:9504
Caused by: java.net.ConnectException: Connection refused (Connection refused)
尝试了其他替代方法: 试图检查其他 stackoverFlow 帖子。 我发现很少有帖子说使用 automator 脚本启动 safariDriver。但是当我尝试使用 automator 脚本启动 safariDriver 时,我可以在“活动监视器”中看到一个“safariDriver”进程,但是当我的脚本运行时,无法连接到同一个端口,并使用已经运行的safariDriver 这是使用的自动化脚本:
security unlock-keychain -p '<password>'
/usr/bin/safaridriver --enable
/usr/bin/safaridriver --port 7050
非常感谢任何帮助!
【问题讨论】:
标签: java selenium jenkins webdriver safaridriver