当前位置: 代码迷 >> Web前端 >> watir-webdriver相干知识
  详细解决方案

watir-webdriver相干知识

热度:6273   发布时间:2013-02-26 00:00:00.0
watir-webdriver相关知识

selenium的webdriver可以说是,自动化测试中别具一格的东西,在开源的自动化测试工具中可谓的独霸一方啊,有的时候很佩服发明这个东西的那三个家伙,真实奇思妙想,而且还聪明异常。不过于此同时,ruby中的watir也是风头很盛,ruby语言的优美,加上watir对自动化测试的实现,也可以说相当不错。之后出现的watir-webdriver就是讲watir的语法引进,使用webdriver来实现自动化测试,两个强强联合应该说在开源自动化测试工具中,是一个闪耀的新星。

?

watir-webdriver可支持Firefox Chrome IE,safari目前还不支持。

?

安装方法也非常简单,安装好ruby,之后用gem安装,如下命令

?

?

Ruby代码?复制代码?收藏代码
  1. gem install watir-webdriver?
[ruby]?view plaincopy
  1. gem?install?watir-webdriver??

记住是目前的watir-webdriver只支持ruby1.9.2,所以装较为新的ruby吧。

?

下面随便找个ruby的IDE工具,可以写自动化测试脚本了,当然性子急的家伙们,使用IRB吧,这个是ruby自带的shell,挺好用。

来试试下面的代码吧。

?

?

Java代码?复制代码?收藏代码
  1. require?'watir-webdriver'?
  2. b = Watir::Browser.new?
  3. b.goto("http://www.baidu.com")?
  4. b.text_field(:id=>"kw").set("watir-webdriver")?
  5. b.button(:id=>"su").click?
  6. p b?
[java]?view plaincopy
  1. require?'watir-webdriver'??
  2. b?=?Watir::Browser.new??
  3. b.goto("http://www.baidu.com")??
  4. b.text_field(:id=>"kw").set("watir-webdriver")??
  5. b.button(:id=>"su").click??
  6. p?b??

打开了百度,查询了关键字,运行正常的,你已经买入watir-webdriver了。

?

如果有问题可以检查一下:

是否安装的是ruby 1.9.2

是否运行了require 'watir-webdriver'并返回true

是否安装了watir-webdriver(gem list 会列出所有安装的包)

查看一下代码是否有误

?

?

最后简单聊聊一些所谓的理念,也是关于watir-webdriver,你慢慢会发现watir-webdriver中不需要xpath来定位元素,虽然webdriver中有很好的支持,不过xpath写出来的东西,真的很难看,你完全不需要他,除非你想让你的代码自己看不懂,别人也不明白。

另外,开始学自动化测试的人都喜欢用QTP,对很喜欢录制,其实真的很傻,录制出来的脚本,正确率真的很低,去看懂录制的脚本,修改好脚本,比你自己认认真真手写出来还要麻烦,用好irb和API这两个东西,足以应付大多数的情况了,不要去录制了,相当不靠谱。

  相关解决方案