Adoro escrever testes de unidade e concordo que eles são uma excelente maneira de testar código, impedir regressões etc. No entanto, não consigo escrevê-los, pois a grande maioria do código em que trabalho diariamente é aplicada código que exibe uma interface do usuário para o usuário. Existe uma boa maneira de testar o código do aplicativo? Quais são as melhores práticas aqui?
Não estou procurando uma resposta específica, como uma estrutura, etc. Mas, em geral, como você aborda esse problema?
unit-testing
applications
Justin Ethier
fonte
fonte
Respostas:
Para testar a interface do usuário real, o Selenium funciona bem.
Se você deseja testes de unidade reais, sua estratégia é retirar o máximo possível da lógica da interface do usuário real, normalmente em um objeto ViewModel. Você pode escrever testes de unidade no objeto ViewModel.
Em outras palavras, coloque o mínimo de lógica possível na interface do usuário real, para que o teste de unidade possa ocorrer em outro lugar.
fonte
Tive sucesso ao testar a unidade do meu aplicativo no MSTest e testar o meu Javascript com o QUnit e coletar os resultados desses testes com um único teste de unidade do MSTest que usa o WatiN (sugeri-me o Selenium , que também pode gravar testes, mas WatiN melhor para automatizar de forma limpa).
fonte