SafariDriver是一个Safari浏览器的扩展。和Firefox类似,在selenium-safari-driver-xxx.jar包中org.openqa.selenium.safari路径下提供了Safaridriver.safariextz扩展程序。

包下载地址: http://mvnrepository.com/artifact/org.seleniumhq.selenium/selenium-safari-driver

可能需要的设置

使用该浏览器,只需要将driver改成SafariDriver即可:
WebDriver driver = new SafariDriver();

Selenium 2 跑safari浏览器 (在windows XP系统上)
1,配置环境(什么装JDK,ECLIPSE,SELENIUM,SAFARI 之类的等等,,略去步骤)
2,编写测试代码(很简单,简单的new SafariDriver()之类的,以google页面为例子,取点值)
   WebDriver driver =new SafariDriver();
   driver.get("http://www.google.com.hk");
driver.findElement(By.name("q")).sendKeys("webdriver");
driver.findElement(By.name("btnK")).click();
new WebDriverWait(driver, 3).until(ExpectedConditions
.titleIs("webdriver - Google Search"));
   dirver.quit();
3,这个时候运行, 会出现这样的结果:
  页面停住了,只有这么类似一条信息显示着“SafariDriver requesting connection at ws://localhost:43980/wd”。
4,要对safari浏览器进行扩展:
   1)创建safari的签名证书,只有这样才能往safari中添加自定义扩展
      至于这个过程,大致上是先注册一个apple ID, 注册完后就可以直接 “get
      started”,再根据提示 一步一步 “create certificate”。 详细过程可以google
      一下, 很简单。
   2)SVN到这个地址:http://selenium.googlecode.com/svn/tags/selenium-2.25.0/(如
      果是使用的selenium0其他版本,如2.21,那么修改下最后的一个版本号就行/tags
      /selenium-2.21.0/),将里面的所有项目都检出到本地(随意取个名字如
      SeleniumSafari2.25)。
   3)cmd 到 这个刚自定义名字的 SeleniumSafari2.25 目录下 , 使用命令 go
      safari, 那么就开始自动build了(build出来的就是待会要添加的extension)。
   4) 打开safari,设置一下 把开发菜单调出来; 然后选择开发--显示扩展创建器--添加
      扩展--选择 SeleniumSafari2.25/build/javascript/safari-driver
      /SafariDriver.safariextension(这个便是刚才build出来的)
   5)选择安装 ,然后 OK, 可以再跑刚才的selenium代码试试了。
5, 这个时候的结果还是会出那个信息页面,不过稍等一下,,接下来就会正常的进入google
页面了。

java selenium操作safari的更多相关文章

  1. Java+Selenium操作日期时间选择框插件

    在自动化测试的时候我们经常会碰到下面的时间日期插件(这个时候这个文本框是不运行我们输入时间的), 我们可以用java获取当前日期,然后用Selenium结合JS代码就可以直接往文本框输入内容. 像这种 ...

  2. java selenium webdriver处理JS操作窗口滚动条

    未经作者允许,禁止转载!!! java selenium webdriver处理JS操作窗口滚动条 java selenium webdriver处理JS操作窗口滚动条 import org.open ...

  3. Java Selenium (十二) 操作弹出窗口 & 智能等待页面加载完成 & 处理 Iframe 中的元素

    一.操作弹出窗口   原理 在代码里, 通过 Set<String> allWindowsId = driver.getWindowHandles(); 来获取到所有弹出浏览器的句柄, 然 ...

  4. Java&Selenium调用JS实现高亮被操作页面元素高亮

    Java&Selenium调用JS实现高亮被操作页面元素高亮 /* * the method of invoking js to do something * * @author daviey ...

  5. 《手把手教你》系列技巧篇(二十九)-java+ selenium自动化测试- Actions的相关操作上篇(详解教程)

    1.简介 有些测试场景或者事件,Selenium根本就没有直接提供方法去操作,而且也不可能把各种测试场景都全面覆盖提供方法去操作.比如:就像鼠标悬停,一般测试场景鼠标悬停分两种常见,一种是鼠标悬停在某 ...

  6. 《手把手教你》系列技巧篇(三十)-java+ selenium自动化测试- Actions的相关操作下篇(详解教程)

    1.简介 本文主要介绍两个在测试过程中可能会用到的功能:Actions类中的拖拽操作和Actions类中的划取字段操作.例如:需要在一堆log字符中随机划取一段文字,然后右键选择摘取功能. 2.拖拽操 ...

  7. 《手把手教你》系列技巧篇(三十一)-java+ selenium自动化测试- Actions的相关操作-番外篇(详解教程)

    1.简介 上一篇中,宏哥说的宏哥在最后提到网站的反爬虫机制,那么宏哥在自己本地做一个网页,没有那个反爬虫的机制,谷歌浏览器是不是就可以验证成功了,宏哥就想验证一下自己想法,于是写了这一篇文章,另外也是 ...

  8. 《手把手教你》系列技巧篇(三十三)-java+ selenium自动化测试-单选和多选按钮操作-上篇(详解教程)

    1.简介 在实际自动化测试过程中,我们同样也避免不了会遇到单选和多选的测试,特别是调查问卷或者是答题系统中会经常碰到.因此宏哥在这里直接分享和介绍一下,希望小伙伴或者童鞋们在以后工作中遇到可以有所帮助 ...

  9. 《手把手教你》系列技巧篇(三十四)-java+ selenium自动化测试-单选和多选按钮操作-中篇(详解教程)

    1.简介 今天这一篇宏哥主要是讲解一下,如何使用list容器来遍历单选按钮.大致两部分内容:一部分是宏哥在本地弄的一个小demo,另一部分,宏哥是利用JQueryUI网站里的单选按钮进行实战. 2.d ...

随机推荐

  1. STM8S ------ VCAP download

    There is a specific pin called vcap in stm8s mcu. I recommend this pin connects to a 1uF capacitor w ...

  2. 2018acm-icpc西安邀请赛后记

    第一次参加icpc的邀请赛,有一点小激动,深知大一弱队实力弱,赛前给队友的目标就是拿块铜,不打铁. 热身赛因为没有用过pc^2,codeblocks又用不习惯的原因,开始调工程调了很久,差一点拿到A题 ...

  3. MySQL_异常

    问题1 描述:在连接MYSQL数据库时出现问题:“ERROR 2003 (HY000): Can’t connect to MySQL server on ‘localhost’ (10061)” 分 ...

  4. Spark进阶之路-Spark HA配置

    Spark进阶之路-Spark HA配置 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 集群部署完了,但是有一个很大的问题,那就是Master节点存在单点故障,要解决此问题,就要借 ...

  5. 函数和常用模块【day05】:生成器(四)

    本节内容 1.概述 2.列表生成式 3.生成器 4.函数实现生成器 5.生成器表达式 一.概述 我们在使用一组数据时,通常情况下会定义一个列表,然后循环里面的元素,但是你想过没有,如果你只需要使用列表 ...

  6. python---生成验证码图片

    工具插件verifycode.py中,记得使用时需要在路由根目录中引入文字资源文件 # coding:utf8 # __author: Administrator # date: // # /usr/ ...

  7. js中闭包的概念和用法

    闭包:主要的作用是 封装变量,收敛权限.防止变量被污染.比如Jquery框架就运用了大量的闭包.为什么呢? 问个问题?框架是如何来避免你声明的变量和它自带的变量不发生的冲突的?????很明显,需要闭包 ...

  8. windows开启powershell在此系统中禁止执行脚本

    首次在计算机上启动 Windows PowerShell 时,现用执行策略很可能是 Restricted(默认设置). Restricted 策略不允许任何脚本运行.若要了解计算机上的现用执行策略,请 ...

  9. (二)Git时间--版本控制工具进阶

    1. 忽略文件 Git 会检查代码仓库的目录下是否存在一个名为 .gitignore的文件,如果存在的话,就去一行行读取这个文件中的内容,并把每一行指定的文件或目录 排除 在版本 控制之外. 注意,. ...

  10. Linux - svn 操作

    --force # 强制覆盖 /usr/bin/svn --username user --password passwd co $Code ${SvnPath}src/ # 检出整个项目 /usr/ ...