Selenium的Web功能测试

2012-09-03  王涞 

Selenium 概述

  Selenium 是一种 Web 应用的自动测试工具,通过模拟用户对 Web 页面的各种操作,可以精确重现软件测试人员编写的 Test Cases 步骤。Selenium 包含三个工具:Selenium-IDE,Selenium-RC 以及 Selenium-Core。其中,Selenium-Core 是驱动 Selenium 工作的核心部分,作为一个用 JavaScript 编写的测试引擎,它可以操作 Web 页面上的各种元素,诸如:点击按钮、输入文本框,以及断言 Web 页面上存在某些文本与 Web 元素等。

  Selenium-IDE 是一个 Firefox 插件,能够录制回放用户在 Firefox 中的行为,并把所记录的 Selenese (Selenium Commands) 转化为 Java/C#/Python/Ruby 等语言,在 Selenium-RC 中修改复用。对于较为复杂的 Test Cases,Selenium-IDE 的功能有限,往往用它录制大致的步骤,再转化为测试人员熟悉的编程语言,在此基础上完善,形成更为强大且灵活的 Selenium-RC Test Cases。

  Selenium-RC(Selenium Remote Control)在 Web 浏览器与需要测试的 Web 应用间架设代理服务器(Selenium Server),使得 JavaScript 引擎与被测 Web 应用同源,绕开同源策略的限制(Same Origin Policy),进而取得对 Web 页面进行各种操作的权限。

  Selenium IDE

  Selenium-IDE 是一个 Firefox 插件,由"Command(命令/动作)" "Target(目标/对象)"及其"Value(值)"构成三段式脚本语言(Selenese)......

  Selenium Core

  Selenium Core是一款可以一次组织大量的测试用例来进行Web软件的功能或系统测试的强大工具......

  Selenium RC

  Selenium RC支持Java C# php python Ruby Pear等多种编程语言。其中任务一种语言都可以由Selenium IDE的三段测试脚本转换过来。

  能把Selenium RC脚本和JUnit单元测试结合起来,既能涵盖功能测试,又能涵盖数据或后台Java类测试,从而构成一个完整的Web应该测试解决方案。

  1.安装与入门

  首先要安装JRE,从http://seleniumhq.org/download/下载Selenium RC安装包,解压后在E:\selenium\selenium-remote-control-1.0.3\selenium-server-1.0.3目录下存放了相关的jar包。

  2.启动Selenium RC Server

  启动Selenium RC服务,启动cmd模式,输入: java -jar selenium-server.jar -interactive。

  3.Selenium RC Server的操作

  Selenium RC Server的操作,在cmd模式下输入:c:\>cmd=getNewBrowserSession&1=*firefox& 2=http://www.google.com,此时会打开firefox进入google.com主页......

  4.机理......

  Selenium RC Server的操作,在cmd模式下输入:c:\>cmd=getNewBrowserSession&1=*firefox& 2=http://www.google.com,此时会打开firefox进入google.com主页。

  5.HTTPS的配置

  如要能够运行HTTPS,须对IE进行配置。FireFox已将证书打包入了配置文件中。为IE导入SSL证书,在E:\selenium \selenium-remote-control-1.0.3\selenium-server-1.0.3\sslSupport中将证书 cybervillainsCA.cer导入即可。最后在启动Selenium RC Server服务时可输入:java -jar selenium-server.jar -log c:\selenium.log -trustAllSSLCertificates来启动服务。

  6.编写测试脚本

  这里以PHP为例,可将Selenium-IDE录制的脚本转为php脚本。 通过java -jar selenium-server.jar -log c:\selenium.log -trustAllSSLCertificates启动服务。在cmd模式中输入c:\>phpunit e:\selenium\selenium-remote-control-1.0.3\selenium-php-client-driver-1.0.1/GoogleTest.php运行php测试脚本。

  7.如何与Junit集成......

  Selenium Grid

  Selenium Grid是Selenium的一个扩展,提供了一个类似于网络集线器(hub)的远程测试控制器,能够测试请求发送到若干个远程机器的Selenium-RC上......

本文摘自:http://www.51testing.com/html/09/n-218609.html

452°/4504 人阅读/2 条评论 发表评论



登录 后发表评论