Я использую Cucumber, Capybara и Capybara-webkit для тестирования различных сценариев в моем приложении Ruby on Rails.
Есть ли способ обнаружить любую ошибку JavaScript на странице во время выполнения сценариев и не пройти тест? Мы используем эти тесты, чтобы убедиться, что мы не нарушаем функциональность (включая JavaScript) между изменениями в рамках наших автоматических тестовых прогонов.
Я вижу сбои в тестовом выводе, но он не проваливает тест:
http://127.0.0.1:54928/...|16|ReferenceError: Can't find variable: $
http://127.0.0.1:54928/...|16|ReferenceError: Can't find variable: $
...
Спасибо!
Обновление: один из способов, который я нашел, состоит в том, чтобы сделать шаг, который пытается выполнить некоторый JavaScript, который был бы возможен только в том случае, если бы не произошло предыдущих ошибок. В этом случае я бы получил такую ошибку:
Javascript failed to execute (Capybara::Driver::Webkit::WebkitInvalidResponseError)
./features/step_definitions/....rb:19:in `/^I should not see any JavaScript errors$/'
features/....feature:34:in `Then I should not see any JavaScript errors'
Есть ли способ лучше?