В проекте rails (5.1.6), когда набор тестов Cypress (3.1.0) щелкает ссылку выхода из системы, выдается ошибка «Uncaught TypeError: Illegal invocation».Далее в выводе объясняется, что «эта ошибка произошла из кода вашего приложения, а не из Cypress.»
Отслеживание журналов моего локального сервера, когда происходит щелчок, и то же самое в консоли chrome javascript, я могу найтиникаких ошибок не выбрасывается.Нажатие кнопки «Выход» при запуске приложения в режиме разработки не вызывает ошибок.В качестве дополнительной меры тестирования я могу настроить свою среду в «тестовом» режиме и взаимодействовать с кнопкой «Выйти» без инцидентов.
Я добавил этот бит в свои тесты, чтобы обойти ошибку:
Cypress.on('uncaught:exception', function (err, runnable) {
//debugger;
return false;
});
Сгенерированные рельсы ссылок выглядят так:
<a class="btn btn-outline-light my-2 my-sm-0" rel="nofollow" data-method="delete" href="/logout">Log out</a>
Я не хочу утверждать, что это ошибка в Cypress, но мой код кажется прямым иНасколько я могу судить, не выдает никаких ошибок при нажатии этой ссылки Cypress или другим способом.
Я использую Devise для управления сеансом.
Итак, у меня есть два вопроса:
- Возможно ли, что это ошибка в Cypress?
- Есть ли способ отследить, какая конкретная кнопка была нажата, когда выдается оператор исключения unpress: Cypress.on, чтобы я непропустить случаи, когда необходимо выявить фактическую ошибку?