Technè

Tecnologia & Experiência do Usuário no C.E.S.A.R

Integrando NUnit ao Visual Studio

Posted by Vinicius On agosto - 4 - 2010

Essa dica vale para qualquer versão do Visual Studio

Porque testar com NUnit?

Estou trabalhando em um projeto que roda tanto no Windows quanto no Linux (usando Mono), se eu usar o teste de unidade que já vem no Visual Studio estarei limitado a IDE, e lá no Linux estou usando o MonoDevelop para desenvolvimento.

Quais as minhas alternativas?

Para integrar o NUnit ao Visual Studio você tem, basicamente, duas opções: ou você compra uma ferramenta que faz isso pra você, ou você usa a interface que já vem com o NUnit e integra ela ao Visual Studio. Se alguém conhecer outra forma, eu gostaria de saber.

1) Se você optar pela primeira alternativa, você vai ter que comprar uma ferramenta como TestDriven.Net, ReSharper ou alguma outra. O problema dessas ferramentas é que elas são pagas, e eu mesmo que não quero pagar pra rodar testes de unidade. Se você já usa uma dessas ferramentas, só continue a ler se você quiser aprender como integrar o NUnit sem o auxílio delas.

2) Na segunda alternativa temos duas outras opções para integração. (a) criar o projeto de testes como um projeto executável e chamar a GUI dentro dele passando a DLL de testes como parâmetro (particularmente acho essa opção uma gambiarra e não recomendo isso pra ninguém); (b) a segunda, e mais elegante, é configurar o Visual Studio para chamar essa interface do NUnit já passando o projeto selecionado como parâmetro.

Como configurar o Visual Studio?

Você só vai precisar executar dois passos para configurar o Visual Studio. (passo 1) Ir no menu Tools > External Tools. (passo 2) Entrar com os dados segundo a imagem abaixo. Após esses dois passos, vai aparecer um novo item no menu Tools chamado “NUnit”. Você pode clicar nele para executar a GUI do próprio NUnit aplicado ao projeto corrente.

MiddlewarePostNUnitTool

MiddlewarePostNUnit

MiddlewarePostNUnitMenu

Como depurar meus testes?

Uma vez que você esteja com a GUI do NUnit aberta e rodando (rodando a interface e não o teste), você pode informar ao Visual Studio que você deseja testar aquele programa que está rodando fora. E como eu faço isso? Você vai no menu “Debug > Attach to process” e seleciona o programa do NUnit que está executando, da mesma forma que ilustrado na figura abaixo.

MiddlewarePostDebug

Agora você pode rodar seus testes de unidade usando NUnit sem ter que usar uma ferramenta de terceiros.