这个标题可能会让你感到困惑,什么叫做winole控件的文字编码方式?通俗点说,watir在执行时,通过winole这个工具去获得ie的控制权及ie的众多属性。在获取ie中页面的文字时,winole将页面中文本转成代码中字符串,这时候就涉及到文本转换的编码问题。
watir提供更改默认文字编码方式的方法
以watir 1.6.5为例,找到lib/waitr/win32ole这个文件
require 'win32ole' #以utf8编码页面文字 WIN32OLE.codepage = WIN32OLE::CP_UTF8 #以gbk编码页面文字 WIN32OLE.codepage = WIN32OLE::CP_ACP
根据实际情况调整这两个选项,如果你的watir测试文件是以unicode编码的,那么最好选择utf8编码格式。