A Net::ReadTimeout
означает, что драйвер ушел, чтобы выполнить то, что вы сказали, а код Ruby решил, что он не вернется.Даже если вы спасете исключение, вы не сможете дать драйверу другую инструкцию, потому что он по-прежнему работает с запросом, который, как вы знаете, не может быть выполнен.
Watir / Selenium не является подходящим инструментом для проверки, еслисайт будет иметь бесконечный цикл.Я бы порекомендовал использовать HTTP-библиотеку, чтобы убедиться, что страница загружается, прежде чем пытаться получить к ней доступ с помощью Watir.
В качестве альтернативы, вы можете создать и закрыть другой сеанс (Watir убьет процесс для вас на browser.close
) за каждый вызов потенциально зацикленного сайта.