在使用watir-webdriver进行测试的时候我们会发现启动1个Firebox浏览器需要很长的一段时间。那么这个时间到底有多长呢?下面的代码可以测试一下。

# encoding: utf-8
t_start_require = Time.new
require 'rubygems'
require 'watir-webdriver'
t_end_require = Time.new
require_time = t_end_require - t_start_require
puts 'require_time ' +require_time.to_s
%w[firefox chrome].each do |b|
@b = Watir::Browser.new b.to_sym
t_end_browser = Time.new
browser_time = t_end_browser - t_end_require - browser_time
puts b + ' start browser time is ' + browser_time.to_s
@b.close
end

  测试结果如下:

  require_time 1.422 firefox start browser time is 9.198 chrome start browser time is 11.725

  由于代码中时间算法的漏洞,实际上chrome的启动时间为11.725 - 9.198 = 2.5

  那么我们可以得到如下的结论:

  预先加载rubygems及watir-webdriver的时间为1.5秒左右 启动firefox需要9秒左右 启动chrome需要2.5秒左右

  本人的开发机器为AMD3.0 4核,4G内存,所以在其他机器上这个时间会有些许变化。但有一点可以确定,那是firefox的启动速度确实不敢恭维。

  可以通过设置firefox可执行文件地址的方式来加速firefox的启动速度,显示设置firefox的可执行文件后,加载速度有一定的提升。