环境:Mac OS X Yosemite 10.10.4下, Safari 8

Step 1:第一次运行SafariDriver时,先找到WebDriver extension的安装路径,比如/Users/extrabux/library/safari/extensions;

Step 2:然后在Java程序中添加:

System.setProperty("webdriver.safari.driver", "/Users/extrabux/library/safari/extensions");
driver = new SafariDriver();

Step 3:运行程序,如果执行正常,说明程序自动安装SafariDriver extension正常了,否则如果报如下异常,继续Step 4

WebDriverException: Message: Failed to connect to SafariDriver after 10065 ms
java.util.concurrent.ExecutionException:
org.openqa.selenium.WebDriverException:
java.lang.reflect.InvocationTargetException

Step 4:上面异常通常出在安装SafariDriver上,即运行SafariDriver之前需要给safari安装一个 WebDriver extension,名字是WebDriver.safariextz,如果安装不成功则执行不成功,mac下的路径应该是/Users/extrabux/library /safari/extensions;

Step 5:打开http://selenium-release.storage.googleapis.com /index.html?path=2.48,因为我用的selenium是2.48版的,所以在这个路径下载 SafariDriver.safariextz; 或者解压本地的selenium-server-standalone-2.48.0.jar,然后在org/openqa/selenium /safari里找到SafariDriver.safariextz;

Step 6:打开Safari -> Preferences -> Extensions (tab),然后将SafariDriver.safariextz拖进去就安装上了该extension了;

Step 7:在/Users/extrabux/library/safari/extensions下验证是否看到WebDriver.safariextz,看到就说明安装extension成功了;

Step 8:Java程序中,new一个SafariDriver之前加上下面这句,目的是不需要程序再自动安装SafariDriver extension了。

System.setProperty("webdriver.safari.noinstall", "true");
driver = new SafariDriver();

Mac下手动安装SafariDriver extension的更多相关文章

  1. Mac下手动安装Chromedriver.exe

    Mac OS X Yosemite 10.10.4下,ChromeDriver运行异常,需要手动安装chromedriver.exe Step 1: 打开https://sites.google.co ...

  2. Mac下删除安装的pkg

        Mac下的安装和删除都比windows更加简单清晰,这点在dmg方式下非常明显,但很多时候我们会使用pkg来进行安装,这样的安装想删除就有点麻烦了. 比如,我安装了Golang这个pkg用于g ...

  3. mac-chrome下手动安装vue-devtools

    原文链接:https://blog.csdn.net/weixin_44868003/article/details/89457089 废话就不多说,直接上安装步骤,一步一步来 => succe ...

  4. Mac 下 docker安装

    http://www.th7.cn/system/mac/201405/56653.shtml Mac 下 docker安装 以及 处理错误Cannot connect to the Docker d ...

  5. Ubuntu 14.04 下手动安装Firefox的Flash插件

    有时候我们不得不採用手动安装一些软件. Ubuntu 14.04 下手动安装Firefox的Flash插件有下面几步 1. 下载Flash插件 下载地址为http://get.adobe.com/cn ...

  6. Mac下Jekyll安装

    之前一直用Wordpress,虽然功能强大,各种插件各种bug,如果想弄个主题,折腾得要命.最近改用jekyll+gitHub免费空间.记录一下. 我用的是Mac,所以只讲述Mac下如何安装,Wind ...

  7. ubuntu14.04下手动安装eclipse

    ubuntu14.04下手动安装eclipse 第一步: 安装jdk 第二步: 下载eclipse,假设下载的文件文件名为eclipse.tar.gz 第三步: 解压 sudo -zxvf ./ecl ...

  8. ubuntu14.04 下手动安装java jdk

    ubuntu14.04 下手动安装java jdk 第一步: 下载jdk.tar.gz (这里假设下载的文件名为jdk.tar.gz) 第二步: 解压 sudo tar -zxvf ./jdk.tar ...

  9. windows下手动安装composer并配置环境变量

    windows下手动安装composer并配置环境变量   转载地址: https://my.oschina.net/7sites/blog/209997 之前发表过一篇如何为composer设置代理 ...

随机推荐

  1. Unity学习笔记

    『 知识点』 [射线] 射线检测碰撞 『游戏实战』 个例 [E]<愤怒的小鸟> 资源 免费Unity基础教程(中文电子书) [E] noobtus(Unity游戏教程)

  2. lua特性纪要

    [局部变量] lua的局部变量通过local进行显示声明, 其作用域仅限于声明它的块block.这里的block分为三种类型: 1.控制结构的执行体 2.函数的执行体 3.chunk 比较容易引起混淆 ...

  3. cookie封装

    //设置cookie function setCookie(name,value,days){     //如果不设置天数 , 默认为30天     days=days?days:30;     va ...

  4. DOM hash

    前段时间做的一个H5专题,用到了hash解决问题,特意记录一下.DOM hash的详细内容可以点击链接查看. hash就是uri中#及后面的部分,例如:www.google.com.hk#123的#1 ...

  5. the usage of map.put

    这个不用要的那么详细,对于应用来说,比如举个例子: Map map = new HashMap();map.put("key","value");这样就存入了一 ...

  6. C++ map的遍历

    一般使用迭代器遍历比较方便. map<string,int> m; map<string,int>::iterator it; it = m.begin(); while(it ...

  7. webservice 实现json模式

    直接上代码 public string GetUserInfoByOpenid(string openid) { var weixinuser = new WeiXinUser(); weixinus ...

  8. python之萌新入门的第一天

    新人的挑战一:配置环境变量及正确地使用工具. 配置环境好难,照着教程做很简单,但是确定环境配置成功好难. 一开始运行helloworld程序的文件时一直出现SyntaxError:invaild sy ...

  9. .NET的面向对象

    一.继承 1.C#中的继承规则 继承是可传递的 派生类是对基类的扩展 构造函数和析构函数不能被继承 派生类可以覆盖已继承的成员 派生类只能从一个类中继承,可以通过接口来实现多重继承 类可以定义虚属性. ...

  10. ARM: STM32F7: hardfault caused by unaligned memory access

    ARM: STM32F7: hardfault caused by unaligned memory access ARM: STM32F7: 由未对齐的内存访问引起的hardfault异常 Info ...