About Selenium:
优势:
1. 记录测试过程中,所见 即是所得,selenium 的所有内部程序都是用Javascipt编写的。
[Javascrīpt: 由Netscape Communications 和Sun Micorsystems公司共同开发的一种描述语言,与Java 的关系比较松散。Javascrīpt 能为Web页添加基本的联机应用程序和功能,但它不是一种真正的面向对象语言。
它的工作特点是,当client端发出一个JS的请求时,它不必从web server下载,而直接由浏览器做出响应。]
2. 支持多种操作系统,如windows, Mac,Linux,也支持多种浏览器,如IE,Firefox, Mozilla.
若使用Selenium IDE进行web 自动记录测试用例录制,只能是在Firefox (笔者还没试过Mozilla,嘿嘿)是先录制好脚本,再在其它浏览器执行测试用例,进行测试。
3. 执行两种开发脚本,test runner,需要安装Selenium Core,执行的文件为.HTML后缀名。另一种是driven(脚本语言编写),支持多种语言:JAVA,.NET, Perl, Python, Ruby.(在下用的是ruby, 没办法,谁叫它既简洁又明了呢!^ ^)
劣势:
较难处理逻辑关系强的业务测试。
Selenium 实质:
通过HTTP协议,发送请求来完成测试用例的。
Selenium命令:只有两种
1. 操作(action):用于模拟用户与web的交互。
2. 断言(assertion):验证一个命令的预期结果。(类似于watir^ ^)
Selenium 的组成:
Selenium IDE:firefox 的 plug-in。 是浏览器的工具,不能安装在IE上。
Selenium Core:纯粹由Javascrīpt组成的,有assertion机制的test suit runnner.
Selenium Remote Control:
一个代理与控制端, 可代替Selenium core 和IDE 的client端。
下载地址:http://www.openqa.org/
一个使用Selenium IDE的测试例子脚本:
class NewTest
def test_foo
open "/intl/zh-CN/"
assertTitle "Google"
type "q", "selenium"
clickAndWait "btnG"
assertTitle "selenium - Google 搜索"
clickAndWait "link=高级搜索"
assertTitle "Google 高级搜索"
type "as_epq", "iccer"
select "lr", "label=简体中文"
clickAndWait "btnG"
assertTitle "selenium "iccer" - Google 搜索"
click "link=测试| 软件测试| 软件缺陷跟踪| 软件配置工具| 测试用例设计| Web测试 ..."
end
end
将脚本拷下,存为.HTML文档,再在firefox的selenium IDE工作中打开,执行OK了。(执行不了多试几次吧。^ ^)