Ruby watir安装及版本兼容解决方法

  1.安装Rubyhttp://rubyforge.org/frs/?group_id=167,官网推荐安装1.8.6版本,下载ruby186-26.exe,安装,安装选项全部默认。

2.更新Rubygem,网速好的情况下可用命令:gem update --system。否则,采用本地安装,打开http://rubyforge.org/frs/?group_id=126,下载rubygems-1.3.4.zip,双击setup.rb安装。

3.安装IE Watir,网速好的情况下可用命令:gem install watir。否则,打开http://rubyforge.org/frs/?group_id=104,下载watir-1.6.2.gem,命令行进入下载文件所在目录,运行gem install watir-1.6.2.gem。我在安装的时候遇到了个奇怪的问题,提示缺少commonwatir,于是在网上下载了commonwatir-1.6.2.gem,进行安装。之后我又执行了一次gem install watir,才算是安装好了。有个疑问,不知道commonwatir的版本和watir有什么区别?而且网上的版本太多,看着比较混乱。

4.检测:打开SciTE,输入

require 'watir' 
ie = Watir::IE.new 
ie.goto("http://www.baidu.cn")

保存为a.rd文件,F5执行,输出

>ruby a.rb 
>Exit code: 0

到此安装成功。

中文问题:

在用watir测试中文的时候,出现乱码,网上查了下,对于watir1.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

FFI::NotFoundError: Function '_get_errno' not found in [msvcrt.dll],运行出错

193ruby+watir3.0

192ruby+watir2.0

解决方法:

watir-classic降到3.0 
win32-process降到0.6.6

gem uninstall watir-classic -v 3.2.0 
gem install watir-classic -v 3.0.0 
gem uninstall win32-process -v 0.7.0 
gem install win32-process -v 0.6.6

ruby1.8.7+watir1.6.5

ERROR:Error installing watir:

win32-process requires Ruby version > 1.9.0

解决方法:

win32-process降到0.6.4

gem uninstall win32-process -v 0.7.0 
gem install win32-process -v 0.6.4

然后将gem更新到最新版本就可以安装watir了

gem update --system

你可能感兴趣的:(Ruby,watir)