Skip to content

04_testes

Douglas Fernandes edited this page May 30, 2019 · 15 revisions

Testes

Vamos criar alguns exemplos simples para a execução de Testes em projetos ASP.NET CORE.

Começamos este passo na branch topicos/t4/p4.

Passo a Passo 1 - Configuração do Projeto

Vamos começar criando o projeto de testes.

  1. Clique com o botão direito na solution, e escolha a opção ADD -> New Project
  • Na tela selecione .NET Core (Dentro de Visual C#), escolha a opção xUnit Test Project (.NET Core).
  • No Name: digite: AcessoDados.Tests.
  1. Através do NuGet, no projeto AcessoDados.Tests, instale os seguintes pacotes:
  • Microsoft.AspNetCore.Mvc.Testing versão 2.1.3
  • Moq
  1. Adicione a referência ao projeto AcessoDados.API no projeto AcessoDados.Tests.
  2. Clique no projeto _AcessoDados.Tests, com o botão direto, escolha a opção Unload Project.
  3. Clique no projeto _AcessoDados.Tests, com o botão direto, escolha a opção Edit AcessoDados.Tests.csproj
  • Mude a linha: <Project Sdk="Microsoft.NET.Sdk"> para <Project Sdk="Microsoft.NET.Sdk.Web">.
  • Adicione a linha> <PackageReference Include="Microsoft.AspNetCore.App" />, dentro da tag _ _
  • DIFF alterações Arquivo final.

Branch final topicos/t5/p1. Para ver as alterações completas DIFF das alterações.

Passo a Passo 2 - Criação de Testes de Integração

Vamos criar nosso primeiros testes de integração.

Projeto AcessoDados.Testes

  1. Adicione a pasta Integration.
  2. Dentro da pasta Integration, adicione a classe CategoriasControllerTests. Arquivo final.
  3. Dentro da pasta Integration, adicione a classe VideosControllerTests. Arquivo final.

Atenção verifique que existem testes que não são válidos, desta forma encontramos erros em nossa aplicação.

Branch final topicos/t5/p2. Para ver as alterações completas DIFF das alterações.

Passo a Passo 3 - Testando a BLL através de Testes Unitários

Projeto AcessoDados.Testes

  1. Adicione a pasta Unit.
  2. Dentro da pasta Unit, adicione a classe BLLServiceBase. Arquivo final.
  3. Dentro da pasta Unit, adicione a classe CategoriaServiceTests. Arquivo final.
  4. Dentro da pasta Unit, adicione a classe VideoServiceTests. Arquivo final.

Atenção verifique que existem testes que não são válidos, desta forma encontramos erros em nossa aplicação.

Branch final topicos/t5/p3. Para ver as alterações completas DIFF das alterações.

Passo a Passo 4 - TDD

Agora vamos fazer as correções necessárias.

Projeto AcessoDados.DAL

  1. Vamos atualizar o arquivo RepositorioComum.cs, para adicionar um novo método. DIFF alterações Arquivo final.
  2. Vamos atualizar o arquivo RepositorioVideos.cs, para fazer as validações necessárias. DIFF alterações Arquivo final.

Projeto AcessoDados.BLL

  1. Vamos atualizar o arquivo VideoService.cs, para fazer as validações necessárias DIFF alterações Arquivo final.

Projeto AcessoDados.API

  1. Vamos atualizar o arquivo VideosController.cs, para fazer as validações necessárias.DIFF alterações Arquivo final.

Projeto AcessoDados.Tests

  1. Vamos atualizar o arquivo VideoServiceTests.cs, para instanciar corretamente o repositório.DIFF alterações Arquivo final.

Agora todos os testes estão passando

Branch final topicos/t5/p4. Para ver as alterações completas DIFF das alterações.

Clone this wiki locally