2016-03-31 4 views
0

Мой вопрос двоякий. Я использую Intern в качестве платформы для интеграции/e2e тестирования с несколькими различными сервисами в различных клиентских JS-инфраструктурах. Я хотел бы иметь возможность флаг две вещей на протяжении испытаний:Мониторинг ошибок и уведомлений об ошибках во всем тесте интеграции

  • апите вызов для извлечения ресурса возвращает состояние в 400 или 500 уровня
  • уведомления об ошибке/делах соответствия некоторых CSS на странице отображается , но исчезает довольно быстро

в первом случае я смотрел использовать что-то вроде window.onerror сценария на стороне клиента, но не уверен, что он будет работать или быть лучшим в этом случае.

Во-вторых, я мог бы, вероятно, проверить наличие ошибок div в определенных точках, но это не обязательно будет охватывать нечто вроде автосохранения. Мне бы очень понравился слушатель во всем тесте.

ответ

0

Проверка onerror, вероятно, является самым простым решением. Просто установите его на странице в начале теста, установите глобальный, если возникнут какие-либо ошибки, и проверьте глобальность в конце теста.

Другой потенциальный вариант (который я не тестировал) может состоять в том, чтобы запустить find для всплывающего окна ошибки в отдельной цепочке команд и запустить его одновременно с основной тестовой цепочкой. Для этого потребуется установить тайм-аут поиска на относительно большую величину (достаточно большую, чтобы находка продержалась весь тест). Используйте Promise.all для объединения двух командных цепей, например:

var load = this.remote.get('somePage').setFindTimeout(somethingBig); 
var errorCheck = load.findByCssSelector('.errorClass').then(function() { 
    throw new Error("shouldn't have found this"); 
}); 
var test = load.doTestThings(); 
return Promise.all([ errorCheck, test ]); 

 Смежные вопросы

  • Нет связанных вопросов^_^