bash - Jenkins 并推出带有扩展的 Safari

标签 bash selenium jenkins safari

我遇到了 Jenkins 无法使用已安装的扩展启动 safari 的问题。当我采用相同的 bash 脚本并通过终端( Jenkins 外部)执行它时,脚本按预期运行。

有问题的扩展是 Selenium Web Driver Safari 扩展。 当 Safari 加载时,我会收到扩展已迁移的提示。当然,所有自动化 UI 测试都会失败。

我已经在谷歌上搜索了我的答案并浏览了 stackoverlfow,但我无法弄清楚。

  1. 我已将 Apple dev 的证书应用于我的 key 链的系统文件夹
  2. 2.45 Safari 扩展已安装并运行
  3. 网络驱动程序使用 safari_opts.skip_extension_installation = true 进行实例化

    • OSX - 10.10.2
    • Jenkins - 1.606
    • Safari - 8.04

我正在努力找出问题所在。非常感谢任何帮助。

谢谢!

布莱恩

最佳答案

由于 Jenkins 在干净的环境中运行作业,即使您已经添加了钥匙串(keychain),它也会忽略它。因此,您应该添加钥匙串(keychain)作为构建步骤。像这样的东西:

security -v unlock-keychain -p <pass> ~/login.keychain

关于bash - Jenkins 并推出带有扩展的 Safari,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29438680/

相关文章:

bash - 如何捕获命令的第一列值?

regex - 使用 Sed 将字符串变量替换为字符串变量

python - 如何关闭 Python selenium webdriver 窗口

java - Jenkins 在 Scala 失败时报告成功

java - 在 Java 中运行 Bash 命令

c++ - 使用 std::system 将 bash(例如 ssh)转换为 C++

java - 如何在jenkins(Ubuntu)中执行构建命令

javascript - 将 PhantomJS 与 Selenium Webdriver 和 Python 结合使用

android - 与 Jenkins 持续集成用于 React Native (iOS + Android) 项目

jenkins - Jenkins 使用哪种 HTTP 身份验证方案?