0

我有一些使用 Watir webdriver 和 FXDriver 运行的浏览器测试,一切正常。然而,有一个测试加载了一个包含大量 HTML 的灯箱,当测试打开这个灯箱时,Firefox 显示一个弹出窗口,抱怨来自 FXDriver 的 Utils.js 第 432 行已成为“无响应脚本”并且测试超时。我宁愿正确解决问题而不是扩展dom.max_script_run_time值,所以我查看了有问题的行...

goog.string.canonicalizeNewlines = function(a) {
  return a.replace(/(\r\n|\r|\n)/g, "\n")
};

很明显为什么这会让 Firefox 挂起,问题是如何阻止它。这个函数在很多地方被调用,并且因为它被 Watir 在一个没有萤火虫的 Firefox 实例中调用,所以调试起来非常棘手。我怎样才能阻止这种情况发生?

编辑文件、延长超时时间和减少它必须处理的 HTML 数量都不是选项。

4

1 回答 1

2

在启用 Firebug 的情况下启动 Watir-WebDriver。

首先下载 Firebug XPI 文件,然后:

profile = Selenium::WebDriver::Firefox::Profile.new
profile.add_extension "../path/to/firebug.xpi"
b = Watir::Browser.new :firefox, :profile => profile

见:http ://watirwebdriver.com/firefox/

于 2011-09-27T09:46:06.803 回答