Spec-Zone.ru › QUnit

QUnit.onUncaughtException()

Категории: Интерфейс расширения.

версия добавлена: 2.17.0.

Описание

QUnit.onUncaughtException( error )

Сообщить об ошибке глобального уровня, которая должна привести к завершению теста с ошибкой.

имя описание
error (любое) Обычно объект Error, но может быть указано и любое другое значение, сгенерированное при выбрасывании или отклонении.

Этот метод можно безопасно вызывать в любое время, включая время между тестами или вне тестов. Он предназначен для использования плагинами и интеграционными слоями.

В общем случае вы не должны использовать этот метод, а вместо этого следует вызывать ошибку. QUnit автоматически обнаруживает и сообщает об необработанных ошибках. Следующие ошибки обрабатываются по умолчанию и не должны связываться с QUnit.onUncaughtException() повторно:

  • HTML Runner: window.onerror
  • HTML Runner: window.addEventListener('unhandledrejection', …)
  • QUnit CLI: process.on('unhandledRejection', …)
  • QUnit CLI: process.on('uncaughtException', …)

Когда QUnit получает сообщение об ошибке глобального уровня строго внутри теста (или одного из модульных хуков), исключение сообщается текущему выполняемому тесту как дополнительное утверждение об ошибке, и, следовательно, тест будет помечен как не пройденный. Это означает, что необработанные исключения (например, вызов неопределенной функции) во время QUnit.test.todo обратного вызова считаются ожидаемой ошибкой и не приводят к завершению выполнения теста с ошибкой.

Ошибки, полученные до начала тестов (например, ранние обратные вызовы событий), внутренние между тестами или вокруг события runEnd (если процесс по какой-то причине все еще жив), генерируют событие “ошибка” для репортеров.

Примеры

const error = new Error('Failed to reverse the polarity of the neutron flow');
QUnit.onUncaughtException(error);
process.on('unhandledExample', QUnit.onUncaughtException);
window.addEventListener('unhandledexample', function (event) {
  QUnit.onUncaughtException(event.reason);
});

© OpenJS Foundation and contributors.
Licensed under the MIT license.
https://qunitjs.com/api/extension/QUnit.onUncaughtException

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API