Pergunta

Eu tenho uma rede programa C++ no Windows que eu gostaria de testar para a rede desliga várias vezes.Quais são minhas opções?

Atualmente eu sou:

  1. Na verdade, desligar o fio de rede a partir da parte de trás do meu computador
  2. usando o comando ipconfig /release
  3. Usando o cports programa para fechar o socket completamente

Nenhum desses métodos, porém, são o ideal para mim, e eu gostaria de emular os problemas de rede mais facilmente.

Eu gostaria que às vezes se conecta a falhar, por vezes, socket lê a falhar, e, às vezes, tomada escreve para falhar.Seria ótimo se havia alguma utilidade que eu pudesse usar para emular esses tipos de problemas.

Também seria bom ser capaz de construir alguns testes unitários automatizados, enquanto esta emulada ruim de rede é para cima.

Foi útil?

Solução

Você pode querer abstrair a camada de rede e, em seguida, você pode ter testes de unidade que injetar interessantes eventos de falha em pontos apropriados.

Outras dicas

O mais próximo que eu posso pensar em fazer algo semelhante com VEDekstop a partir de Shunra..

Simulação de Alta Latência e Baixa largura de Banda em Testes de Aplicativos de Banco de dados

Shunra CINCO Padrão do Desktop é um cliente baseado no Windows solução de software que simula uma rede de área ampla link para que você pode testar aplicativos em uma variedade de corrente e de potencial, as condições de rede, diretamente do seu desktop.

Você pode subclasse qualquer biblioteca de classe que você está usando para gerenciar sua sockets (presumivelmente CAsyncSocket ou CSocket se você estiver usando o MFC), substituir os métodos cuja falha que você deseja testar, e inserir apropriado o código de teste em suas substituições.

Existem alguns métodos que você pode usar, se depender de qual o nível que você deseja testar.Para nível de função, você pode usar XUNIT framework de testes para simulação de uma resposta.Para o nível do software, você pode usar um servidor proxy local para contral de conexão.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top