Olá pessoal, tudo certo?

Este não é um assunto novo, e existe bastante documentação a respeito, mas achei interessante criar esse post pois a maioria do material está em inglês e ainda existem muitas dúvidas de como fazer isso, então vamos lá!

Assumindo que você já possui uma suite de testes feitas com o NUnit, mostrarei aqui como rodar estes testes durante o processo de build no Team Foundation Server 2012.

O Visual Studio 2012 veio com um novo Test Runner, que possibilita rodar testes que não tenham sido desenvolvidos utilizando o Microsoft Unit Test Framework. No caso do NUnit, isso é possível através da instalação NUnit Test Adapter. Após instalar esta extensão, a janela do Test Explorer irá automaticamente reconhecer os testes de unidade e será possível rodá-los, da mesma forma que é feito com o MSTest.

ScreenShot004

Se você executar uma build nesse momento, a aplicação será compilada, mas nenhum teste será executado.

ScreenShot007

Para que o test runner identifique os testes, é necessário configurar o Build Controller para que ele encontre os assemblies do NUnit e, dessa forma, reconheça e execute os testes no Build Agent. No entanto, antes de configurar o Build Controller, é necessário adicionar os assemblies do NUnit em uma pasta dentro do source control.

Ao instalar a extensão NUnit Test Adapter, as dlls do NUnit serão copiadas para uma pasta em seu computador. Geralmente o caminho onde as extensóes são instaladas é C:\Users\{NomeDoUsuario}\AppData\Local\Microsoft\VisualStudio\11.0\Extensions.

ScreenShot005

Copie todas as dlls do NUnit para uma pasta no source control. Vocë deve inclusive copiar a dll do TestAdapter pois como expliquei anteriormente, é ela que fará com que o test runner identifique os testes criados com o NUnit.

ScreenShot006

O próximo passo agora é configurar o Build Controller para utilizar os assemblies que estão nessa pasta do source control. Para isso, no servidor de build, abra o Team Foundation Server Administration Console. Localize o Build Controller e clique em Properties.

ScreenShot008

Em Version control path to custom assemblies, selecione a pasta do source control onde estão os assemblies do NUnit.

ScreenShot010

Depois de toda a configuração ter sido concluída, execute uma nova build. A aplicação deve ser compilada e todos os testes devem ser executados.

ScreenShot011

Publicado originalmente em http://osmarlandin.net/2013/06/11/executando-testes-com-nunit-no-tfs-2012/ (11/06/2013)

Osmar Landin