← Back to list

Facilitando TDD com NCrunch

Alberto Monteiro in albertomonteiro · 2012-05-11 02:43 · 0 claps · 4.0 min read
#ncrunch #tdd #teste
Open on Medium ↗

Facilitando TDD com NCrunch

TDD é uma prática extremamente aconselhada, apesar de se chamar Test Driven Development, o real objetivo dele é proporcionar um melhor design de código, se acompanhado de KISS, Yagni trará grande facilidade em manter e entender o código desenvolvido. É claro que também ele nos proporciona rastreabilidade em nosso código quando temos uma boa cobertura.

TDD sem NCrunch

Antes de conhecer o NCrunch eu tinha trés opções para rodar meus testes, quando usava o MSTest eu usava o nativo do Visual Studio, quando usava NUnit eu usava ou o ReSharper ou o TestDriven para verificar se meus testes estavam passando. Nesse exemplo vou usar MS Test para facilitar a demonstração.

Primeiro passo é cria a solução, adicionei dois projeto, um do tipo Class Library e outro Test Project

[caption id=”” align=”alignnone” width=”265" caption=”Figura 1: Estrutura do projeto.”]

[/caption]

Crie a classe DadoUmCalculadora em meu teste, com o seguinte código:

[csharp]using Microsoft.VisualStudio.TestTools.UnitTesting;

namespace TDDWithNCrunch.Test { [TestClass] public class DadoUmCalculadora { [TestMethod] public void PossoEfetuarASomaDeDoisNumeros() { var calculadora = new Calculadora(); int resultado = calculadora.Soma(2, 2); Assert.AreEqual(4, resultado); } } }[/csharp]

E aqui a classe Calculadora no projeto TDDWithNCrunch:

namespace TDDWithNCrunch
{
    public class Calculadora
    {
        public int Soma(int a, int b)
        {
            return a + b;
        }
    }
}

Nada muito complicado, afinal esse não é o intuito do artigo.

Para testar é só clicar no segundo botão da esquerda para direita, ou usar o atalho CTRL + R + T:

[caption id=”” align=”alignnone” width=”423" caption=”Figura 2: Barra de botões do Visual Studio”]

[/caption]

E ai veremos que nosso teste passou!

[caption id=”” align=”alignnone” width=”569" caption=”Figura 3: Testes passando”]

[/caption]

Nada muito complicado, mas podemos melhorar isso com o NCrunch.

TDD com NCrunch

Primeira passo é instalar o NCrunch que tem versões para Visual Studio 2008, 2010 e 11. Para baixar é so acessar esse link: http://www.ncrunch.net/download.htm

A instalação é simples, next, next, next e finish. Apos instalar, se seu Visual Studio estiver aberto, reinicie ele.

Ao reiniciar o Visual Studio você vai ver que um novo item de menu foi criado, NCrunch como mostra a imagem abaixo:

[caption id=”” align=”alignnone” width=”547" caption=”Figura 4: Barra de menu”]

[/caption]

Agora devemos configurar o NCrunch, para isso clique em NCrunch -> Enable NCrunch e siga os passos a seguir:

[caption id=”” align=”alignnone” width=”475" caption=”Figura 5: Primeiro passo”]

[/caption]

Precione Next

[caption id=”” align=”alignnone” width=”475" caption=”Figura 6: Segundo passo”]

[/caption]

Vamos selecionar a segunda opção para ele rodar os testes de forma paralela

[caption id=”” align=”alignnone” width=”475" caption=”Figura 7: Terceiro passo”]

[/caption]

Selecione a primeira opção para que ele possa rodar todos os test quando for detectada qualquer mudança no código.

[caption id=”” align=”alignnone” width=”475" caption=”Figura 8: Quarto passo”]

[/caption]

Selecione a segunda opção para que ele rode todos os testes por padrão, a primeira opção é util quando temos muitos projetos que queremos limitar quais testes serão rodados continuamente, o que não é o nosso caso.

[caption id=”” align=”alignnone” width=”475" caption=”Figura 9: Ultimo passo”]

[/caption]

Por fim termina a instalação, e agora nosso testes já vão ser rodados automaticamente.

São adicionado indicadores de estado no editor de código, veja:

[caption id=”” align=”alignnone” width=”395" caption=”Figura 10: Indicadores de código passando”]

[/caption]

[caption id=”” align=”alignnone” width=”403" caption=”Figura 11: Indicadores de código falhando”]

[/caption]

E também temos uma janela onde mostram por padrão os testes que estão falhando, alem de ter outras opções, veja:

[caption id=”” align=”alignnone” width=”397" caption=”Figura 12: Janela mostrando os testes falhando”]

[/caption]

[caption id=”” align=”alignnone” width=”390" caption=”Figura 13: Janela sem resultado, devido a todos os testes passarem”]

[/caption]

Quando a bolinha ficar com a cor em preto isso indica que aquela linha não está sendo coberta pelo teste.

Por final veja como ele funciona em tempo real:

[caption id=”” align=”alignnone” width=”487" caption=”Figura 14: Funcionamento em tempo real”]

[/caption]

Como podemos ver NCrunch facilita e muito a prática de TDD, com os testes rodando sem precisar clicar em nenhum botão ou usar algum atalho, podemos facilmente mudar a implementação de um código nosso e ver se ele está falhando em tempo real!

Para saber mais: Sobre NCrunch Documentação do NCrunch


메타데이터
post_id
a41e292fef86
slug
facilitando-tdd-com-ncrunch-a41e292fef86
url
https://medium.com/albertomonteiro/facilitando-tdd-com-ncrunch-a41e292fef86
canonical_url
https://medium.com/albertomonteiro/facilitando-tdd-com-ncrunch-a41e292fef86
author_url
https://medium.com/@albertomonteiro
status
ok
fetched_at
2026-07-28 13:03:15