Aplicando TDD no Visual Studio Team System 2010

Um dos maiores problemas que temos atualmente nos projetos ligados ao desenvolvimento de software são relacionados a qualidade de software. A falta de um controle efetivo acaba por propagar em todo o projeto prejudicando o cronograma e a satisfação dos clientes.

O Test-driven development (TDD) é uma técnica aplicada no desenvolvimento ágil de software
onde primeiro desenvolvemos os testes e depois implementamos as regras de negócio. A proposta é ter justamente os testes para ir validando já o sistema a medida que for desenvolvido.

O Visual Studio Team System 2010 oferece suporte ao TDD e estarei demonstrando para você
logo abaixo como é feita essa implementação.  No exemplo abaixo nós temos um exemplo de teste unitário. O detalhe importante é que a classe Projeto não existe ainda.

   1: namespace TDD.Demo

   2: {

   3:     [TestClass]

   4:     public class ClassTDDDemo

   5:     {

   6:         [TestMethod]

   7:         public void Testando()

   8:         {

   9:             Projeto p = new Projeto();

  10:             int valor1 = 10;

  11:             int valor2 = 20;

  12:             int retorno;

  13:             int esperado = 30;

  14:             retorno = p.Somar(valor1, valor2);

  15:             Assert.AreEqual(esperado, retorno);

  16:         }

  17:     }

  18: }


O próximo passo então é clicar em Projeto com o botão direito do mouse e solicitar a geração da classe  conforme exemplo abaixo.

Generate Class

Depois você vai escolher onde será gerada a sua classe de negócio conforme o exemplo apreentado abaixo.

image

Após confirmar você terá a nova classe criada. Você deve repetir também os passos para os métodos que deseja implementar.

   1: namespace Negocio01

   2: {

   3:     public class Projeto

   4:     {

   5:         public int Somar(int valor1, int valor2)

   6:         {

   7:             throw new NotImplementedException();

   8:         }

   9:     }

  10: }


Agora é só escrever a sua regra de negócio que ao terminar basta rodar os testes unitários que já foram criados antes mesmo da códificação de negócio.

image 

Testar software é fundamental para atendermos um mercado cada vez mais exigente por qualidade de software. Portanto é necessário adaptar a sua empresa e seu projeto informatizando a sua área de controle de qualidade.

O que você achou? Continue o tema participando nos comentários. Aproveite e cadastre-se também em nossa rede social.

[],

Ramon Durães

MVP, Especialista em Visual Stduio Team System

Ramon se diverte testando software