Selenium Core

Selenium是ThroughtWorks公司的一个强大的开源Web功能测试工具系列,这个系列现在主要包括以下4款:

Selenium Core:支持DHTML的测试案例(效果类似数据驱动测试),它由一些纯js代码组成, 可以运行在windows/linux的不同browser上。它是Selenium IDE和Selenium RC的引擎。

Selenium IDE:支持并且只支持Firefox浏览器,属于Firefox的一个插件,支持的浏览器太少,而依附于Firefox 也不便于日后开展自动化测试,但是,它的录制快捷好用!并且有代码转换功能,可以把Selenium 语言测试用例转为C#,Java,PHP,Ruby,Prel,Groovy,Python等语言的测试案例。

Selenium RC:Selenium Remote Control。

Selenium Grid:允许同时并行地、在不同的环境上运行多个测试任务,能极大加快Web应用的功能测试。

Selenium Core HTA:Selenium Core HTA其实是Selenium Core的额外模式,你只要Selenium Core配置稍加修改,即为HTA模式,Selenium Core HTA可以在IE最高安全等级(特权)下工作,这意味着它仅能在IE下工作,由于限制较大,下面将排除对Selenium Core HTA的讨论。
===== 浏览器支持 =====

(1).Selenium IDE仅可以在Firefox中工作。
  
(2).Selenium Remote Control支持很多浏览器,包括最常用的:firefox,ie,safari等N款浏览器。
  
(3).Selenium Core支持的浏览器是最广的,这点和它的实现有关。作为IDE和RC的引擎,Selenium Core几乎可以在任何浏览器中工作。
  
需要远程安装:是否需要在被测网站的服务端安装?
  
这里只有Selenium Core需要,这是出于同源策略的原因。这也是Selenium Core一个很大的限制,试问,如果你要测试Google.com,还得在google的服务器上装一个Selenium Core,那是多搞笑的一件事。
  
而Selenium IDE和Selenium Core HTA不会被同源策略所限制,因为他们对浏览器扩展了。
  
Selenium RC提供一个代码服务器来保证Selenium JS文件看似来自相同的远程服务器,从而符合同源策略;代理服务器欺骗浏览器,让它认为这里的确有像http://www.google.com/selenium/这样的目录。

===== Selenium RC(Remote Control) =====

Selenium RC(Remote Control)是一个基于java编写的开源测试工具,允许使用多种语言编写自动化的WEB UI测试用例。这个工具提供一个Selenium Server可以启动,停止和控制绝大多数主流浏览器,这个服务器使用AJAX直接和浏览器进行交互,可以使用HTTP GET/POST请求向Selenium Server发送命令。

Selenium-RC安装包包含两部分:Selenium-server、Selenium-client-driver(各语言版本分别对应一个 client-driver.jar),server为测试服务器,client-driver为测试用例的API(编写测试用例的使用用到)。

==== 启动Server:====

启动命令java -jar Selenium-server.jar 可以带参数启动,如java -jar selenium-server.jar -interactive为以交互模式启动,这里自己可以将启动操作制作成简单的.bat或.sh脚本,如bat脚本(此脚本与selenium- server.jar在同一级目录下)。

==== 开发运行测试用例: ====

1. 解压Selenium-RC压缩包,取出selenium-java-client-driver.jar

2. 打开Java IDE(Eclipse, NetBeans, IntelliJ, Netweaver, etc.)

3. 新建一个project

4. 将selenium-java-client-driver.jar导入此project的classpath

5. 将Selenium-IDE录制好的html脚本转换成java文件,导入新建的project(可能需要稍作修改,如添加assert判断用例是否测试通过),或直接使用selenium-java-client API编写测试用例。本工具同时支持Junit和TestNg测试框架。

6. 启动Selenium Server

7. 在Java IDE 或命令行执行编写好的测试用例

1 week ago, this page was being read.

, ,

Subscribe to Comments