1. ruby 1.8.6 最高只支持到1.5.4,所以需要:gem update --system
2. 使用ruby 1.9.X貌似,对中文的支持有问题,没搞定,以后再研究。
3. 解决输入中文的问题:1.5.6以上不需要
一.问题
使用watir1.5时候,如果发现它不支持中文,可以尝试修改
一下它的源代码。
二. 解决方案
1.打开watir.rb
2.在class TextField中加入一个新的method,代码如下:
-------------------------------------------
def characters_in(value)
index = 0
while index < value.length
len = value[index] > 128 ? 2 : 1
yield value[index, len]
index += len
end
end
-------------------------------------------
3.更改class TextField的doKeyPress( value )方法部分代码,将下面代码注释掉或删除
-------------------------------------------
for i in 0 .. value.length-1
sleep @ieController.typingspeed
typing speed
c = value[i,1]
@ieController.log " adding c.chr " + c .chr.to_s
@o.value = @o.value.to_s + c
fire_key_events
end
-------------------------------------------
替换为如下代码
-------------------------------------------
characters_in(value) {|c|
sleep @ieController.typingspeed
@o.value = @o.value.to_s + c
fire_key_events
}
-------------------------------------------
4. 解决上传图片的问题:
1. 首先修改C:\ruby\lib\ruby\gems\1.8\gems\watir-1.5.6\watir\input_elements.rb文件
找到FileField类下的set方法,把原来的替换成
system("rubyw -e \"require 'win32ole';
@autoit=WIN32OLE.new('AutoItX3.Control'); waitresult=@autoit.WinWait
'选择文件', '', 15; sleep 1; if waitresult == 1\" -e
\"@autoit.ControlSetText '选择文件', '', 'Edit1', '#{setPath}';
@autoit.ControlSend '选择文件', '', 'Button2', '{ENTER}';\" -e \"end\"")
这样做是为了支持中文.
5. 检查Watir版本:
ruby -e 'require
"watir"; puts Watir::IE::VERSION'
6. 解决多个Watir版本共存的办法, 把不用的Watir版本移走,系统能自动识别。
7. ci_reporter
gem install reporter
If you're using Test::Unit, ensure the ci/reporter/rake/test_unit_loader.rb file is loaded before
the test is run. If you're using RSpec, you‘ll need to pass the following arguments to the spec command:
--
require
GEM_PATH/
lib/
ci/
reporter/
rake/
rspec_loader
--
format
CI::Reporter::RSpec
You may also want to set the output directory as demonstrated by setting the CI_REPORTS environment variable.
require
'test/unit'
require
'ci/reporter/rake/test_unit_loader.rb'
require
'watir'
ENV[
"CI_REPORTS"
]
= 'C:/temp/'
分享到:
相关推荐
主要问题是 Watir 的依赖包 `activesupport` 需要 Ruby 版本 >= 1.8.7,而当前系统上安装的是 Ruby 1.8.6。此外,RubyGems 的自动更新功能也出现了问题。 #### 解决方案 1. **安装 Ruby:** - 下载并安装 `ruby...
2.本地安装watir-1.4.1.gem,执行gem install watir-1.4.1.gem -l 3.本地安装rubygems-update-1.3.4.gem,执行 gem install rubygems-update-1.3.4.gem 4.更新rubygems,执行update_rubygems (这一步先忽略,有影响...
Ruby和Watir结合为Web自动化测试提供了一个强大且灵活的解决方案。通过Ruby的清晰语法和Watir的直观API,测试脚本易于编写和维护。无论你是新手还是经验丰富的测试工程师,理解并掌握Ruby和Watir都能显著提高你的...
如果没有错误并且打印出Watir的版本号,说明安装成功。 在实际使用Watir时,还需要注意以下几点: - 确保浏览器驱动与正在使用的浏览器版本兼容。例如,如果使用Chrome,需要下载并配置ChromeDriver;对于Firefox...
3. **Watir库**: 在Ruby环境中,使用`gem install watir`命令安装Watir库。 4. **其他依赖库**: 根据你的需求,可能还需要安装其他的辅助库,如`rspec`用于编写规范化的测试代码。 ### **三、API介绍** Watir提供了...
压缩包中包含目前2013/01/19最新的安装文件,有rubyinstaller-1.9.2-p136、DevKit-tdm-32-4.5.1-20101214-1400-sfx、rubygems-1.8.24、watir-4.0.2、watir-webdriver-0.6.2等文件,并附上简略安装说明。
watir测试框架介绍 watir测试框架介绍 watir测试框架介绍
安装命令:gem install watir --local。
这样的组合可以提供一个全面且详细的测试报告,帮助开发者和测试团队更好地理解和解决问题。 总的来说,解决Watir输出测试报告的问题,需要理解Ruby编程、面向对象设计以及日志记录的最佳实践。通过自定义报告类和...
开源自动化测试工具组合:Ruby+Watir安装 安装准备: 1. 工具安装包准备: Ruby官方下载地址:http://www.ruby-lang.org/zh_cn/downloads/,稳定版本Ruby 1.8.6 Watir下载地址:...
### Ruby Watir 教程详解 #### 一、Ruby Watir 概述 **Ruby Watir** 是一种用于网页自动化测试的工具库,它能够模拟用户在浏览器...通过结合Ruby的强大特性和Watir的灵活性,可以实现高效稳定的自动化测试解决方案。
文档部分可能涵盖了API参考、教程、常见问题解答以及最佳实践等内容,帮助开发者快速理解和掌握Watir的使用。而示例部分则提供了实际的代码片段,演示了如何执行各种Web测试任务,如点击按钮、填写表单、验证页面...
在这个Watir API的CHM文档中,我们可以找到关于Watir类、方法、属性的详细说明,以及各种示例代码,便于学习和查阅。 **Watir API关键知识点** 1. **Watir类与对象** Watir库中的主要类包括Browser和Element。...