Selenium 是 ThoughtWorks 专门为 Web 应用程序编写的一个验收测试工具。据 Selenium 主页所说,与其他测试工具相比,使用 Selenium 的最大好处是:
作为 Programmer 来说,写一段程序来帮助我们完成一系列繁琐的人工操作工作,是一件多么愉快的事。21 世纪是网络的时代,几乎所有的互联网操作都离不开浏览器,如果能让程序控制浏览器来为我们做一系列繁琐的工作,互联网的那些事儿不就变得简单了吗?太好了,想起都太好了。
Selenium 正是能为我们做这些事的工具。
http://code.google.com/p/selenium/downloads/list?can=1&q= 在该网站上面下载所需的安装包。
*在 客户端 就可以通过 http://localhost:5553/wd/hub 来进行调用了。
与 Linux 环境有很多相同点。由于 linux 环境下相比 Window 环境更稳定,所以一般在没有使用 Windows 环境的情况下,都是使用的 Linux 环境下面的 firefox,如果我们一定要使用Windows 环境,我们主要是使用它的 IE 浏览器。
如果一定要使用 Windows 环境,我们这里也说一下如何搭建
与 Linux 环境的区别:
- Selenium 默认使用的 Driver 是 firefox, 在 window 环境下面需要启动 IE,所以我们需要 IEDriverServer.exe
- Window 环境下面,目前官网明确说明支持 XP,其他系统官方没有明确说明是否支持
- gem 'selenium-webdriver', '2.39.0' #2.39.0 该版本号一定要与 selenium-server-standalone-2.39.0.jar 这个 java 包的版本一致
- gem 'selenium'
- gem 'selenium-client'
- gem 'capybara', '2.2.1'
以上 gem 包的作用请在 https://github.com/ 上面看文档
include Capybara::DSL #我们使用Capybara来操作Selenium
Capybara.run_server = false
Capybara.default_driver = :selenium
Capybara.register_driver :selenium do |app|
http_client.timeout = 1800
Capybara::Selenium::Driver.new(app,
:browser => :remote,
:url => 'http://localhost:5553/wd/hub', #我们上面为之非常努力配置的 Selenium-RC实例
:desired_capabilities => :firefox #其实只有这里不同
)
end
初始化成功后,我们就可以使用 Capybara::DSL 里面封装的 selenium 操作浏览器的方法了。 比如:让浏览器访问一个网页,就只需要使用 visit 'http://www.baidu.com' 大家先看看这里面,非常的人性化的方法:https://github.com/jnicklas/capybara
include Capybara::DSL #我们使用Capybara来操作Selenium
Capybara.run_server = false
Capybara.default_driver = :selenium
Capybara.register_driver :selenium do |app|
http_client = Selenium::WebDriver::Remote::Http::Default.new
http_client.timeout = 1800
Capybara::Selenium::Driver.new(app,
:browser => :remote,
:url => 'http://localhost:5553/wd/hub', #我们上面为之非常努力配置的 Selenium-RC实例
:desired_capabilities => :internet_explorer, #其实只有这里不同
:http_client => http_client
)
end
初始化成功后,我们就可以使用 Capybara::DSL 里面封装的 selenium 操作浏览器的方法了。 比如:让浏览器访问一个网页,就只需要使用 visit 'http://www.baidu.com' 大家先看看这里面,非常的人性化的方法:https://github.com/jnicklas/capybara