Pergunta

Quais são as diferenças entre o uso de uma ferramenta vs integrada como o testdriven.net ou o uso de um corredor de teste da GUI como icarus ou GUI da Nunit?

O que você prefere e por quê?

Até agora, descobri que os relatórios são melhores em icarus do que no TD.NET, que possui apenas uma saída de linha de comando. No entanto, o TD.NET é mais rápido, posso executar testes únicos com mais facilidade sem precisar desmarcar o restante primeiro. A integração do NCOVER também é muito boa.

Foi útil?

Solução

O Icarus tem um ótimo recurso que me mantém usando -o. É a recarga automática e a execução de testes.

Eu mantenho icarus pairando no monitor esquerdo. Cada vez que construo no Visual Studio, o Icarus recarrega os conjuntos e executa todos os testes. É como o feedback instantâneo da análise de solução do Resharper, exceto para testes em vez de sintaxe. A execução dos testes é automática e não parece afetar o desempenho do Visual Studio (provavelmente b/c icarus é seu próprio processo, não hospedado dentro do IDE).

Para ativar essa configuração, vá para Icarus-> Opções-> Test Explorer. Verifique 'sempre recarregue os arquivos' e 'Execute os testes após recarregar'.

Outras dicas

Você tem um servidor de integração contínuo (como um servidor de construção, mas executa testes de unidade)?

Nesse caso, você pode configurar a Gallio para executar seus testes de unidade e ter todas as informações de relatórios lá, permitindo que os desenvolvedores usem algo com feedback mais rápido enquanto trabalham.

Se não houver opção, prefiro algo que seja integrado ao IDE como o testdrien. O feedback imediato é realmente útil ao refatorar um código ou desenvolver algo novo no TDD. Além disso, se você não tiver a verificação da sanidade em um único ponto (como um servidor de CI), você vai querer quantos olhos puder encontrar nesses testes de unidade. Os desenvolvedores tendem a usar o que for mais fácil e, geralmente, uma suíte de teste integrada é mais fácil do que um componente separado.

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