Como posso parar todas as consultas do Ajax atualmente em andamento iniciadas pela instância do DataTables?

Descrição breve

A redefinição de um servidor de teste para um estado conhecido faz com que meus testes falhem devido a solicitações do Ajax iniciadas pelas instâncias do DataTables em andamento no momento em que o servidor é redefinido. Gostaria de evitar isso interrompendo as solicitações do DataTables antes que o servidor seja redefinido.

Descrição detalhada

Eu tenho um aplicativo no qual uso DataTables em algumas páginas. Todas essas tabelas de dados executam consultas do lado do servidor para preencher suas tabelas.

Quando executo testes do sistema, às vezes há uma condição de corrida que pode acontecer:

O executor de teste inicia o servidor de teste.

O executor de teste carrega em um navegador de teste uma página com uma instância do DataTable em algum lugar nela.

O executor de teste executa o teste, que executa suas verificações e finalizações.

O executor de teste redefine o servidor de teste para um estado conhecido para o próximo teste.

Um alerta é exibido na página, informando que o DataTables apresentou um erro do Ajax. O alerta diz:

Aviso do DataTables: id da tabela = [algum id] - erro do Ajax. Para mais informações sobre este erro, consultehttp://datatables.net/tn/7

Meu sistema de teste, que não espera o alerta, está confuso e registra uma falha, mesmo que o teste tenha sido bem-sucedido. (Ou, em alguns casos, falha).

Eu sei que isso acontece porque o servidor interrompeu abruptamente uma solicitação do Ajax. O que estou procurando é uma maneira de impedir que o alerta aconteça em primeiro lugar. Gostaria de interromper todas as solicitações em andamento do DataTablesantes o servidor é redefinido.

Soluções já rejeitadas

Diga às instâncias do DataTables para não usar alertas: Desejo que meus testes falhem levemente, se uma instância do DataTables tiver um problema que não esteja relacionado à redefinição do servidor de teste.

Modificando o servidor de teste: prefiro manter o servidor simples e não se preocupelá sobre solicitações que podem ficar sem resposta.

Aguarde no lado do cliente a conclusão de todas as solicitações: isso pode atrasar consideravelmente os testes, especialmente quando essa espera é repetida para dezenas de testes.

Direcione o navegador de teste para uma nova página, sem o DataTables, pois isso interromperá as solicitações atuais: novamente isso prejudicará o desempenho do teste.

questionAnswers(2)

yourAnswerToTheQuestion