t
  • Entreguei o primeiro projeto em #WRT gastei mais tempo configurando o ambiente do que desenvolvendo! A #nokia poderia melhorar isso..

Posts recentes

Comentários recentes

O que testar nos Controllers?

Postado por Daniel Fonseca Castro - Friday, June 25, 2010 6:03 AM

Além do coração da sua aplicação e quando falo “coração” estou me referindo às regras de negócio, você precisa testar os Controllers da aplicação e é claro que você não espalha as suas regras de negócio pelos Controllers, eu acredito que a cobertura de testes nos Controllers pode ser menor que a cobertura das regras de negócio, no meu caso acredito que no mínimo 70% dos meus controllers deve estar protegido.

Não importa como você desenha a suas aplicação, mais o papel dos Controllers em uma aplicação ASP.NET MVC é muito claro ,as Actions dentro dos Controllers recebem uma solicitação(request), e retorna (response) alguma coisa, eu liste os tipos de retorno disponíveis em um outro post Conheça os ActionResult disponíveis.

Quando eu testo os meus Controllers eu faço a seguinte pergunta, dado um request o response esta correto? O template padrão do ASP.NET MVC mostra um exemplo muito claro de teste de Controllers, talvez os nomes dos teste não seja o melhor exemplo, mais refatorando ficaria assim.

[TestClass]
public class Home_Controller_Quando_Action_Index
{
    [TestMethod]
    public void Executada_Com_Sucesso()
    {
        // Arrange
        HomeController controller = new HomeController();

        // Act
        ViewResult result = controller.Index() as ViewResult;

        // Assert
        ViewDataDictionary viewData = result.ViewData;
        Assert.AreEqual("Welcome to ASP.NET MVC!", viewData["Message"]);
    }
}

[TestClass]
public class Home_Controller_Quando_Action_About
{
    [TestMethod]
    public void Executada_Com_Sucesso()
    {
        // Arrange
        HomeController controller = new HomeController();

        // Act
        ViewResult result = controller.About() as ViewResult;

        // Assert
        Assert.IsNotNull(result);
    }
}

Galera é isso, no próximo post vou falar um pouco de Mock até lá!

Daniel Fonseca Castro

Currently rated 5.0 by 1 people

  • Currently 5/5 Stars.
  • 1
  • 2
  • 3
  • 4
  • 5

Related posts

Add comment


 

  Country flag