Jenkins 和推出带扩展的 Safari
Jenkins And Launch Safari With Extensions
我 运行 遇到 Jenkins 无法使用安装的扩展程序启动 safari 的问题。当我使用相同的 bash 脚本并通过终端(在 jenkins 之外)执行它时,脚本按预期运行。
有问题的扩展是 Selenium Web 驱动程序 Safari 扩展。
当 Safari 加载时,我会看到扩展已迁移的提示。所有自动 UI 测试当然都会失败。
我已经 google 搜索了我的答案并浏览了 stackoverlfow,但我无法弄明白。
- 我的钥匙串的系统文件夹中应用了 apple dev 的证书
- 2.45 Safari 扩展已安装并运行
webdriver 实例化 safari_opts.skip_extension_installation = true
- OSX - 10.10.2
- 詹金斯 - 1.606
- 野生动物园 - 8.04
我正在努力找出问题所在。非常感谢任何帮助。
谢谢!
布莱恩
由于Jenkins是运行干净环境的工作,即使你已经添加了keychain,它也会忽略它。因此,您应该添加一个钥匙串作为构建步骤。类似于:
security -v unlock-keychain -p <pass> ~/login.keychain
是的,stanjer 是对的......我只是添加这个答案来改进它。
去这个问题的细节特别评论没有“71”。
https://code.google.com/p/selenium/issues/detail?id=7933
我在 shell 脚本的开头使用了这段代码,如下所示:
keychain="~/Library/Keychains/login.keychain"
security -v unlock-keychain -p ewew1221 ~/Library/Keychains/login.keychain
if [ $? -ne 0 ];then
echo "Cannot open keychain ${keychain}"
exit 1
fi
ewew1221 是我的密码
我 运行 遇到 Jenkins 无法使用安装的扩展程序启动 safari 的问题。当我使用相同的 bash 脚本并通过终端(在 jenkins 之外)执行它时,脚本按预期运行。
有问题的扩展是 Selenium Web 驱动程序 Safari 扩展。 当 Safari 加载时,我会看到扩展已迁移的提示。所有自动 UI 测试当然都会失败。
我已经 google 搜索了我的答案并浏览了 stackoverlfow,但我无法弄明白。
- 我的钥匙串的系统文件夹中应用了 apple dev 的证书
- 2.45 Safari 扩展已安装并运行
webdriver 实例化 safari_opts.skip_extension_installation = true
- OSX - 10.10.2
- 詹金斯 - 1.606
- 野生动物园 - 8.04
我正在努力找出问题所在。非常感谢任何帮助。
谢谢!
布莱恩
由于Jenkins是运行干净环境的工作,即使你已经添加了keychain,它也会忽略它。因此,您应该添加一个钥匙串作为构建步骤。类似于:
security -v unlock-keychain -p <pass> ~/login.keychain
是的,stanjer 是对的......我只是添加这个答案来改进它。
去这个问题的细节特别评论没有“71”。
https://code.google.com/p/selenium/issues/detail?id=7933
我在 shell 脚本的开头使用了这段代码,如下所示:
keychain="~/Library/Keychains/login.keychain"
security -v unlock-keychain -p ewew1221 ~/Library/Keychains/login.keychain
if [ $? -ne 0 ];then
echo "Cannot open keychain ${keychain}"
exit 1
fi
ewew1221 是我的密码