netbeans + ruby + watir web自动测试框架搭建
这是一个开源,免费,灵巧,简易的web自动化测试组合框架;通常情况,开源的东西总是给人以迷人,开放式的触感,但同时,也让人难以快速接近(像是东方男人看待西方美女);要了解一个开源而且组合漂亮的框架,总是要费些周章......总而言之,它不会像收费的东西,你很讨厌它,但不可否认,你的付费其实换取了别人的琐碎劳动成本,各有利弊(就像某些肉体交易似的)。
1.netbeans还是那个netbeans。其实你完全可以不用它,可以直接使用记事本编码,然后ruby命令运行。不过还是那个原因,对于老是在“万千”项目中转来转去的我们这些人,不像那些专注于某一门IT艺术的开发者,我们老不停地接触新项目,它不大,却很繁琐,因为它老是根据我们自己的,或者“老板”的意志到处转移,所以,基本上我们没有太多时间专注某一门艺术......这样,就要求我们对大多数东西都希望它尽快搭建完整,进入测试使用阶段;对,这就是我现在的工作,哈哈!最新版本netbeans 6.8!
2.ruby。最新已经是1.9.1了,但是我还是安装了1.8.6,原因?很简单!我google.com.hk到的第一个就是它,哈哈!
3.watir就该细细说了,呵呵,因为前面两个简单的缘故,这个安装理所当然复杂点,要不然余下的时间又该空虚寂寞冷了。
Watir全称是“Web Application Testing in Ruby”,发音类似“water”。
Watir能做什么?
Watir是一个Ruby库,使用IE浏览器进行Web应用程序测试。
Watir可以使用IE5.5,IE6.0,IE7.0,支持Win2000,WinXP,Win2003 Server,Vista。
Watir可以模拟用户点击链接,填写表单,点击按钮。
Watir可以模拟用户验证页面内容。
Watir不能做什么?
Watir不能用于Firefox,Safari浏览器,一个替代方案是使用Firewatir或者Safariwatir。
Watir不能用于Ajax control的测试。
Watir不支持Activex的测试
Watir不支持IE Dialog的支持(以前曾经支持过)。
因为ruby装的不是最新版本,所以,最新版本的watir安装失败,这个最新版本是watir-1.6.5.gem。经过极其十分非常严格的安装测试,发现watir-1.5.6.gem可以装得进去!
注意事项:
1).本地安装命令: gem install watir-1.5.6.gem 注释:【这里不是命令部分!】需要cd到watir-1.5.6.gem所在目录
2).远程安装命令: gem install watir-1.5.6.gem --remote
3).运行ruby安装目录/lib/ruby/gems/1.8/gems/wa
相关文档:
The following is improved version of the code created by David Mullet, from
http://rubyonwindows.blogspot.com/2007/03/ruby-ado-and-sqlserver.html
require 'win32ole'
class SqlServer
# This class manages database connection and queries
attr_accessor :connection, :data, :fields
attr_wr ......
Ruby,一种為簡單快捷物件導向編程(面向对象程序设计)而創的脚本語言,在20世纪90年代由日本人松本行弘(まつもとゆきひろ/Yukihiro Matsumoto)开发,遵守GPL协议和Ruby License。它的灵感与特性来自于Perl、Smalltalk、Eiffel、Ada 以及 Lisp ......
self上下文
Ruby的self有和Java的this相似之处,但又大不相同。Java的方法都是在实例方法中引用,所以this一般都是指向当前对象的。而Ruby的代码逐行执行,所以在不同的上下文(context)self就有了不同的含义,先来看看常见的context self都代表哪些
1
2
3
4
5
6
7
8
9
10
11
12
13
......
class Point
@x = 1
@y = 2
def initialize(x,y)
@x,@y = x,y
end
end
代码中的@x,@y为实例变量,实例变量只对self的环境起作用,因此initialize外面的@x=1,@y=2只对类本身起作用,而方法内部,的@x,@y是对对象的实例起作用的。
class Point
include Enumerable
def initialize(x ......
我们在使用C编程时会遇到一个问题,比如头文件的一个函数包含在一个lib中,但是
在实际连接中我们不知道它在哪个库中。也许可行的一种办法是直接上网查询某个
函数的依赖条件,这对于常用函数是没问题的!但是对于复杂而又缺少文档的第三方
lib来说,无异于大海捞针。
自此通过2种办法来尝试解决这个问题,我们先看第一 ......