Quando devo arrancar um tipo criando manualmente uma versão "stub", em vez de usar uma estrutura de zombaria

StackOverflow https://stackoverflow.com/questions/2453460

  •  20-09-2019
  •  | 
  •  

Pergunta

Existem circunstâncias em que é favorável criar manualmente um tipo de stub, em vez de usar uma estrutura de zombaria (como rinocerontes) no ponto de teste.

Tomamos essas duas abordagens em nossos projetos. Meu intestino, quando olho para a longa lista de versões de stub de objetos, é que ele adicionará a sobrecarga de manutenção e move a implementação do stub para longe do ponto de teste.

Foi útil?

Solução

Para fins de testes de unidade automatizados, as zombares são quase sempre a melhor opção. Como eles usam a reflexão para zombar de um objeto, eles permanecerão atualizados quando você fizer alterações.

A única vez em que crio um stub é para testes de integração - por exemplo, você pode extrair um serviço de envio de SMS para que você possa executar um período de integração / teste do usuário sem ser cobrado por enviar mensagens SMS (em vez disso, as mensagens são armazenadas para que elas pode ser verificado).

Outras dicas

Quando você chega ao ponto em que os stubs levam muito tempo de manutenção, é hora de passar para uma estrutura de stub/simulação. Então eu acho que você já deu a resposta.

Atualmente, ainda estou usando stubs com meu projeto atual, por uma questão de simplicidade. Existem apenas alguns tipos para os quais eu uso um stub, e geralmente há apenas um stub, às vezes dois para recriar erros, mas não mais.

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