Как я могу остановить все текущие запросы Ajax, запущенные экземпляром DataTables?

Краткое описание

Сброс тестового сервера в известное состояние приводит к сбою моих тестов из-за того, что запросы Ajax, запускаемые экземплярами DataTables, выполняются во время сброса сервера. Я хотел бы предотвратить это, остановив запросы DataTables до перезагрузки сервера.

Подробное описание

У меня есть приложение, в котором я использую DataTables на некоторых страницах. Все эти DataTables выполняют запросы на стороне сервера для заполнения своих таблиц.

Когда я выполняю тестирование системы, иногда может возникнуть состояние гонки:

Тестовый запуск запускает тестовый сервер.

Организатор теста загружает в браузере тестов страницу с экземпляром DataTable где-то на нем.

Тестовый прогон запускает тест, который выполняет его проверки и завершается.

Запуск теста сбрасывает тестовый сервер до известного состояния для следующего теста.

На странице появляется предупреждение о том, что в DataTables произошла ошибка Ajax. В предупреждении говорится:

Предупреждение DataTables: идентификатор таблицы = [некоторый идентификатор] - ошибка Ajax. Для получения дополнительной информации об этой ошибке, пожалуйста, см.http://datatables.net/tn/7

Моя система тестирования, которая не ожидает оповещения, сбита с толку и регистрирует сбой, даже если тест был на самом деле успешным. (Или в некоторых случаях происходит сбой.)

Я знаю, что это происходит потому, что сервер внезапно прервал запрос Ajax. То, что я ищу, - это способ предотвратить появление оповещения. Я хотел бы остановить все текущие запросы DataTablesдо сервер сброшен

Решения уже отклонены

Скажите экземплярам DataTables не использовать оповещения: я хочу, чтобы мои тесты не выполнялись, если экземпляр DataTables сталкивается с проблемой, не связанной с перезагрузкой тестового сервера.

Модификация тестового сервера: я предпочитаю сохранять сервер простым и не беспокоитьсятам о запросах, которые могут остаться без ответа.

Ожидание завершения всех запросов на стороне клиента: это может значительно замедлить тестирование, особенно когда это ожидание повторяется для десятков тестов.

Направьте тестовый браузер на новую страницу без DataTables, так как это прервет текущие запросы: снова это снизит производительность теста.

Ответы на вопрос(2)

Ваш ответ на вопрос