参考:http://www.51testing.com/zhuanti/selenium.html,http://www.cnblogs.com/fnng/p/3653793.htmljavascript
Selenium是一个用于Web应用程序测试的工具,是ThoughtWorks专门为Web应用程序编写的一个验收测试工具。Selenium测试直接运行在浏览器中,就像真正的用户在操做同样。、css
Selenium 如今存在2个版本,一个叫 selenium-core, 一个叫selenium-rc 。html
selenium 不是简单的一个工具,而是由几个工具组成,每一个工具都有其特色和应用场景。前端
selenium 1.0java
IDE:录制(只能用于FF,而后转化成其余语言,使用RC去调用)python Grid:并行程序的执行web RC:程序编写及运行编程 Selenium Core:基于JsUnit,由JS编写,可运行于任何支持JS的浏览器。api |
selenium IDE 是嵌入到Firefox浏览器中的一个插件,实现简单的浏览器操做的录制与回放功能。那么什么状况下用到它呢?快速的建立bug重现脚本,在测试人员的测试过程当中,发现了bug以后能够经过IDE将重现的步骤录制下来,以帮助开发人员更容易的重现bug。IDE录制的脚本能够转换成多种语言,从而帮助咱们快速的开发脚本,关于这个功能后而用到时再详细介绍。浏览器
Selenium Grid是一种自动化的测试辅助工具,Grid经过利用现有的计算机基础设施,能加快Web-app的功能测试。利用Grid,能够很方便地同时在多台机器上和异构环境中并行运行多个测试事例。其特色为:
selenium RC 是selenium 家族的核心工具,selenium RC 支持多种不一样的语言编写自动化测试脚本,经过selenium RC 的服务器做为代理服务器去访问应用从而达到测试的目的。
selenium RC 使用分为Client Libraries和selenium Server:
selenium 2.0
搞清了selenium 1.0 的家族关系,selenium 2.0 是把WebDriver 加入到了这个家族中;简单用公式表示为:
selenium 2.0 = selenium 1.0 + WebDriver |
须要强调的是,在selenium 2.0 中主推的是WebDriver ,WebDriver 是selenium RC 的替代品,由于 selenium 为了向下兼容性,因此selenium RC 并无完全抛弃,若是你使用selenium开发一个新自动化测试项目,强列推荐使用WebDriver 。那么selenium RC 与webdriver 主要有什么区别呢?
若是是新项目直接学习webdriver 就OK了,RC是过期技术。
(1)selenium进行的自动化测试是基于ui层面的,因此html,css,javascript基本上是必不可少的,至于javascript,有不少的前端都使用javascript做为其脚本语言!不过javascript并不须要学得很深,只须要掌握一些基础的知识,而后在实践中碰到的时候再继续深学下去!
(2)掌柜一门编程语言,好比java,C#,python,ruby!很明显,如果有开发语言的基础,则写脚本的时候也不会太费力,这也是一项基本功!目前,使用java仍是偏多的!另外也是因为selenium支持多种语言写测试脚本!自动化测试脚本并不能靠录制出来的,基本上是要靠本身写出来的,毕竟录制的脚本的弊端不少,尤为是前端使用了某些框架以后,录制的脚本基本成为鸡肋!
(3)单元测试框架junit/testing,目前不少人采用selenium+junit或者selenium+testng测试架构,因此,须要掌握能配合selenium进行测试的框架,好比junit/testng,仅仅利用其提供的api即可以大大地辅助你的测试,提高测试效率!
一、JDK1.6
二、Eclipse:Version: Kepler Service Release 1,下载地址:http://www.eclipse.org/downloads/
三、Selenium:selenium-java-2.39.0.zip,下载地址:http://code.google.com/p/selenium/downloads/list
解压selenium-java包,这个包里面包含四部分,以下图:
一、建立一个java项目:
二、而后把上面解压出来的文件拷到新建的project目录下,目录结构以下图:
三、添加build path,项目目录右键-->Build Path--> config build path-->Java Build Path-->Libraries-->Add JARs,把libs文件夹下的jar包所有添加上,再添加selenium-java-2.48.2-srcs.jar和selenium-java-2.48.2.jar
三、添加完以后目录结构以下图,多了Referenced Libraries,这里就是上面那一步添加进去的jar包:
至此,环境工做准备就绪,下面来写一个简单的小例子。
四、在src下面新建测试类,以下图:
五、添加代码,实现:打开百度,而后在百度搜索框输入helloworld,点击搜索按钮,关闭浏览器。
import org.openqa.selenium.By; import org.openqa.selenium.WebDriver; import org.openqa.selenium.WebElement; import org.openqa.selenium.firefox.*; public class TestClass { public static void main(String[] args) { //若是火狐浏览器没有默认安装在C盘,须要制定其路径 //System.setProperty("webdriver.firefox.bin", "D:/Program Files/Mozilla firefox/firefox.exe"); WebDriver driver = new FirefoxDriver(); driver.get("http://www.baidu.com/"); driver.manage().window().maximize(); WebElement txtbox = driver.findElement(By.name("wd")); txtbox.sendKeys("HelloWorld"); WebElement btn = driver.findElement(By.id("su")); btn.click(); driver.close(); } }
而后直接右键-->Run As-->Java Application就能够看到效果了。