watir安装及中文支持问题

watir( Web Application Testing in Ruby) 是一款基于ruby的自动化测试工具,使用watir写的语句在执行时,IE(如果使用IE的话)将被运行,并在框中输入内容,执行跳转,判断结果等,完全模拟人的操作行为。

 

假设已经安装好了ruby,则只需要执行:

gem update --system

gem install watir

两个命令即可。

 

特别说明:watir主要安装于windows下,因为个人电脑主要是windows操作系统,而且watir好多库针对IE,我试着在linux下安装,似乎不成功,应该是linux下只能安装支持Firfox版本的watir。

 

RubyGems(简称 gems)是一个用于对 Rails 组件进行打包的 Ruby 打包系统。 它提供一个分发 Ruby 程序和库的标准格式,还提供一个管理程序包安装的工具。也就是说,安装ruby扩展组件或是卸载都可以gem命令用这种方式进行。

 

在watir官网从watir-1.4.1之后已经找不到.exe方式的安装文件了,都采用了gem方式。

 

安装成功之后,直接运行网上的例子时,require "watir"会报装载库文件错误(no such file to load -- watir),这是因为安装时使用的时rubygems方式,因此需要在require之前,加上require 'rubygems'才能正确找到库文件。当然也可以通过设置环境变量:RUBYOPT = rubygems的方式,使得每次运行ruby程序时,都自动会加上 require 'rubygems'选项!

 

既然成功了,就写一点测试代码吧:

 

 

 

watir的1.6.5版本,发现对中文的支持不好,获取属性值是中文的对象时获取失败

查找了下原因,是因为编码的问题导致的。

解决的办法如下:

 

修改C:/ruby/lib/ruby/gems/1.8/gems/watir-1.6.5/lib/watir/win32ole.rb 文件中的下面代码

WIN32OLE.codepage = WIN32OLE::CP_UTF8

 

修改为

WIN32OLE.codepage = WIN32OLE::CP_ACP

 

codepage值有下面这些,不行的话可以逐个修改下,试下

WIN32OLE::CP_ACP, WIN32OLE::CP_OEMCP, WIN32OLE::CP_MACCP, WIN32OLE::CP_THREAD_ACP, WIN32OLE::CP_SYMBOL, WIN32OLE::CP_UTF7, WIN32OLE::CP_UTF8

 

 

watir文档官方网站:http://wtr.rubyforge.org/rdoc/1.6.5/

纯英文的,是时候多看看纯英文文档了。呵呵。

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值