Ruby+watir自动化测试

因为组内的产品是一个供上海甚至全球所有designer使用的网站,所以并发性很高,于是一直存在访问速度不佳的诟病。为了提高访问速度,就需要对该网站的性能进行测试。于是在网上查了并发性测试和自动化测试的工具。
本文讲的是自动化测试的工具,用到的是Ruby+Watir。

首先对工具进行下介绍:
Ruby Ruby是面向对象的编程语言,它追求的是“简便快捷的面向对象编程”。Ruby是解释型语言,因此不需编译即可快捷地编程。同时Ruby具有类似Perl的强大的文本处理功能,它可并不只是个玩具,您可以用它来进行实用的编程。此外,您还可以很方便地使用C语言来扩展Ruby的功能,因此可以把她当作各种库的前端来使用。
Watir Watir( Web Application Testing in Ruby)是一个优秀的开源工具,用于开发基于Web应用的自动化测试程序。它使用Ruby脚本语言,提供了轻量级的自动化测试程序框架和丰富的开发库,有效地加速了自动化测试程序开发。
Watir的主要特性以及使用 Watir开发自动化程序的优势
Watir是一个轻量级的用于开发基于Web应用的自动化测试框架,它基于Ruby语言,提供了丰富的开发库,简化了自动化测试程序开发。下面我们总结了Watir的主要一些优良特性:
lWatir基于 Ruby语言。 Ruby是面向对象语言,功能强大,简单易用。程序解释执行不用编译;
lWatir支持多种操作系统平台,包括 Windows, Mac, Linux;同时支持多种主流浏览器,如 IE, Firefox, Chrome
lWatir提供了丰富的开发库,封装了包括浏览器窗口 windows,button, link, dialog, p_w_picpath, table, div等绝大多数 HTML对象类型,方便测试人员快速构建自动化测试程序。
lRuby提供了强大的交互命令工具 IRB(Interactive Ruby Shell),在 Watir程序开发中,我们使用 IRB调试代码。别于传统调试方法,测试人员可以就单独一条命令或者一段程序进行调试,从而能够快速定位错误,节省调试时间。
lRuby提供了 Test::Unit单元测试框架,通过继承该框架,我们可以对测试用例,测试用例集 (Test Suites)进行灵活方便地组合和调用,并且可利用断言 (Assertion)来验证测试结果。
l其他脚本语言如 Perl, Python, Shell等也可以很好地集成到 Watir程序中。
lWatir程序在运行时,允许测试人员在该测试机器上访问其他网页或者进行其他操作而不会影响到对象识别的结果。
 

Ruby+Watir的安装
1.      工具安装包准备:
Ruby官方下载地址:http://www.ruby-lang.org/zh_cn/downloads/,
http://rubyinstaller.org/downloads/archives
Watir下载地址:http://rubyforge.org/frs/?group_id=104&release_id=28016,
 
网友建议的组合是:Ruby 1.8.6+watir 1.5.2
 
因为我本来装的是ruby1.9.3,当装watir时,从高版本的1.6.5一直装到1.4.1才成功,所以还是装网友建议的组合吧!
 
 
Firefox下载地址:http://www.hacker.cn/Get/gjrj/06102608545293311.shtml,网友建议装2.0,我装的是比较高的版本,但是在装jssh时出现了不兼容的问题,所以建议大家不要装太新版本的,不然就要找到合适的jssh了。
 
Gem下载地址:http://rubyforge.org/frs/?group_id=104&release_id=28016,
 
rubygems可以在http://rubygems.org/pages/download 下载,选择gem就可以了。我装的是:rubygems-update-2.0.3.gem 
 
Firefox插件jssh、firebug、firewatir下载
Jssh下载地址:http://code.google.com/p/firewatir/downloads/list?can=1&q=&colspec=Filename+Summary+Uploaded+ReleaseDate+Size+DownloadCount,建议装jssh-WINNT-2[1].x.xpi
 
Firebug下载,直接通过Firefox搜索并下载组件就是了。
Firewatir下载地址:http://code.google.com/p/firewatir/downloads/list 或 http://rubyforge.org/frs/?group_id=104&release_id=28016 建议装firewatir-1.1
 
以上都是相对于windows的,要在linux上跑的话,可以看:
Linux
Install Ruby 1.9 : http://www.cnblogs.com/xfiver/archive/2012/03/08/2385833.html
Install Rubygems1.85http://rubyforge.org/frs/?group_id=126
Install Watir: http://rubyforge.org/projects/wtr/ ; http://rubyforge.org/frs/?group_id=104
 
2.      安装步骤:
 
Ø安装环境:Windows xp
Ø安装ruby,直接点击rubyexe安装文件即可。其实可以装好几个版本的ruby,只要在system variables(系统环境变量)的PATH里加上你装的这个版本的bin目录进去就是了,比如我的就是把“D:\Program Files\Ruby186\bin;”进到PATH的最前面。
Ø安装firefox,直接点击exe安装文件即可
Ø安装firefox插件,安装方法:打开firefox浏览器,点击“文件”/“打开”,选择插件文件名,安装即可;提醒:需要安装插件有:jssh、firebug
Ø安装firewatir,安装方法:点击“开始”/“运行”,在页面输入命令:cmd,进入DOS命令操作界面;进入ruby安装的目录,输入命令:gem install firewatir-1.1.gem
Ø安装watir
1)    点击“开始”/“运行”,在页面输入命令:cmd,进入DOS命令操作界面,
2)   进入ruby安装的目录,输入ruby –v,查看ruby版本,显示:Ruby 1.8.6
3)    输入gem –v,查看gem版本,显示0.94
4)    升级gem,把gem包(rubygems-update-2.0.3.gem)拷贝到ruby安装目录,在dos界面输入命令:gem installrubygems-update-1.3.4.gem(gem包名)

提醒:安装完后进入ruby目录:lib\ruby\gems\1.8\gems\rubygems-update-1.3.4,点击这个文件夹中的文件:setup.rb,升级gem即可
5)     安装watir包,把watir包拷贝到ruby安装目录,在dos界面输入命令:gem installwatir-1.5.2.gem 
 
3.      安装完毕检查
 
在dos界面,进入firewatir安装路径下(一般在:
ruby =》lib =》ruby =》gems =》1.8 =》gems =》firewatir-1.1
),进入unittests文件夹,输入命令:ruby mozilla_all_tests.rb,如果可以正确执行程序,说明安装正确没有问题,到此可以开始自动化测试开发的旅程了。
 
4. 使用
学习watir的测试脚本的语法后,我们可以写对应的脚本,直接在命令行(cmd)进入脚本所在目录通过ruby命令运行就是了。这样就能自动化的模拟对页面的操作了。

网站名称:Ruby+watir自动化测试
网址分享:http://pwwzsj.com/article/jsccsj.html