我有一个MAC从服务器通过Java WebStart连接到我的Jenkins主服务器(SSH不工作)。 我有一个名为' qalab'的管理员用户谁登录了m / c(它永远不会睡觉)。 节点系统信息显示为给定图像。
现在,我需要通过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'?
答案 0 :(得分:1)
你真的不想以root身份运行你的奴隶(上面的信息表明你正在做)。只要您的Jenkins主目录位于他们可以访问的某个位置,Jenkins奴隶就没有固有的需要升级权限(我们使用非管理员帐户运行我们的主人和奴隶)。在您的情况下,上面的Jenkins主目录似乎是/
,这可能不是您想要做的,因为如果您不是root用户,您将遇到权限问题。
qalab
用户家中的任何目录都可以正常工作,只要qalab
用户具有读/写/执行权限,您创建的任何其他目录都应该工作(我们倾向于使用/Development/Jenkins
目录,但这是我们的历史偏好。)
来自我们的一个奴隶:
user.dir /Development/Jenkins
user.home /Users/buildbot
user.name buildbot
我们的主人配置相似,两者都适合我们。