|
selenium 是ThoughtWorks的开发并开源的自动化测试工具的集合分为selenium IDE ,selenium core,selenium RC ,selenium on rails 这么几个工具集合
selenium IDE 是一个firefox的的一个插件,可以起一些录制脚本的工具
selenium core 是selenium的核心是js库,可以跑自动化测试脚本,是用来js写
selenium RC 是有java写一个服务器端的库,客户端可以是写用java ruby php写的一些自动化脚本(这里特别指出的ide可以自动生成)
selenium on rails 是为rails专门做的一部分
目前比较有价值的selenium rc部分,如果你们的测试团队有比较的大的兴趣啊,可以往这方面发展,其实qtp是用vbscript是比较恶心的语言,但是人家有很大的厂商做广告
,所以说现在还有很多人在用,selenium rc 可以用java ruby python等很好语言,可以很好的跟每日构建放在一起
下载 selenium 了,到 http://www.openqa.org/selenium/ 下载就可以了,记得选择selenium-rc 的版本。
在 selenium-remote-control-0.9.0\server 目录里,我们运行 java -jar selenium-server.jar
之后你就会看到一些启动信息。要使用 selenium-rc ,启动这个server 是必须的。
当然,启动的时候有许多参数,这些用法可以在网站里看看教程,不过不加参数也已经足够了。
selenium server 启动完毕了,那么我们就可以开始编写测试类了
我们先有个概念,selenium 是模仿浏览器的行为的,当你运行测试类的时候,你就会发现selenium 会打开一个浏览器,然后浏览器执行你的操作。
好吧,首先生成我们的测试类:
下面是用ruby写的脚本
require 'test/unit'
require 'selenium'
class ExampleTest < Test::Unit::TestCase
def setup
@selenium = Selenium::SeleniumDriver.new("http://www.google.cn", 4444, "*firefox", "http://localhost:4444", 10000);
@selenium.start
end
def teardown
@selenium.stop
end
def test_something
@selenium.open "/"
@selenium.type "q", "selenium"
@selenium.click "btnG"
@selenium.wait_for_page_to_load "30000"
assert_equal "selenium - Google 搜索", @selenium.get_title
end
end
可以很好跟单元测试做好集成 |
|