Webdriver / FXDriver utils.js, вызывающий ошибку «неотзывчивый скрипт» в Firefox - PullRequest
0 голосов
/ 27 сентября 2011

У меня есть некоторые браузерные тесты, которые запускаются с использованием Watir webdriver и FXDriver, и все в целом работает нормально. Однако есть один тест, который загружает лайтбокс с большим количеством HTML, и когда тесты открывают этот лайтбокс, Firefox отображает всплывающее окно с жалобой на то, что строка 432 Utils.js из FXDriver стала «не отвечающим скриптом», и время теста истекло. Я бы скорее исправил проблему, чем расширил значение dom.max_script_run_time, поэтому я посмотрел на обсуждаемую строку ...

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

Совершенно очевидно, почему это заставляет Firefox зависать, вопрос в том, как это остановить. Эта функция вызывается из многих мест, и, поскольку она вызывается Watir в экземпляре Firefox без Firebug, ее довольно сложно отладить. Как я могу предотвратить это?

Редактирование файла, увеличение времени ожидания и уменьшение количества HTML, с которым он имеет дело, - это , а не вариантов.

1 Ответ

2 голосов
/ 27 сентября 2011

Запустите Watir-WebDriver с включенным Firebug.

Сначала загрузите файл 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/

...