詹金斯 - 奴隶用户改变

时间:2014-04-03 20:32:02

标签: macos jenkins selenium-webdriver webdriver

我有一个MAC从服务器通过Java WebStart连接到我的Jenkins主服务器(SSH不工作)。 我有一个名为' qalab'的管理员用户谁登录了m / c(它永远不会睡觉)。 节点系统信息显示为给定图像。

enter image description here

现在,我需要通过Selenium启动Safari浏览器。 每当我使用Safari运行测试时,我都会得到以下异常

java.lang.IllegalStateException:预期的Safari数据目录不存在:/ Users / null / Library / Safari

(Chrome和Firefox工作正常)

Selenium在/ Users / user.name / Library / Safari

中查找Safari

我试过这样。

System.setProperty(" webdriver.safari.driver"," / Users / qalab / Library / Safari");

但是,它似乎没有采用这条路径并因上述异常而失败。

有什么方法可以解决这个问题吗? 另外,为什么它以root用户身份显示user.name。如何将其更改为我的用户 - ' qalab'?

1 个答案:

答案 0 :(得分:1)

你真的不想以root身份运行你的奴隶(上面的信息表明你正在做)。只要您的Jenkins主目录位于他们可以访问的某个位置,Jenkins奴隶就没有固有的需要升级权限(我们使用非管理员帐户运行我们的主人和奴隶)。在您的情况下,上面的Jenkins主目录似乎是/,这可能不是您想要做的,因为如果您不是root用户,您将遇到权限问题。

qalab用户家中的任何目录都可以正常工作,只要qalab用户具有读/写/执行权限,您创建的任何其他目录都应该工作(我们倾向于使用/Development/Jenkins目录,但这是我们的历史偏好。)

来自我们的一个奴隶:

user.dir    /Development/Jenkins
user.home   /Users/buildbot
user.name   buildbot

我们的主人配置相似,两者都适合我们。