Compartilhar via


Testes no .NET

Este artigo apresenta o conceito de teste e ilustra como diferentes tipos de testes podem ser usados para validar o código. Várias ferramentas estão disponíveis para testar aplicativos .NET, como a CLI do .NET ou IDEs (Ambientes de Desenvolvimento Integrado).

Tipos de teste

Os testes automatizados são uma ótima maneira de garantir que o código do aplicativo faça o que seus autores pretendem. Este artigo aborda testes de unidade, testes de integração e testes de carga.

Testes de unidade

Um teste de unidade é um teste que exerce componentes ou métodos de software individuais, também conhecidos como uma "unidade de trabalho". Os testes de unidade devem testar apenas o código dentro do controle do desenvolvedor. Eles não testam questões de infraestrutura. As preocupações com a infraestrutura incluem interagir com bancos de dados, sistemas de arquivos e recursos de rede.

Para obter mais informações sobre como criar testes de unidade, consulte Ferramentas de teste.

Testes de integração

Um teste de integração difere de um teste de unidade, pois exerce a capacidade de dois ou mais componentes de software de funcionarem juntos, também conhecidos como sua "integração". Esses testes operam em um espectro mais amplo do sistema em teste, enquanto os testes de unidade se concentram em componentes individuais. Geralmente, os testes de integração incluem preocupações de infraestrutura.

Testes de carga

Um teste de carga visa determinar se um sistema pode ou não lidar com uma carga especificada. Por exemplo, o número de usuários simultâneos usando um aplicativo e a capacidade do aplicativo de lidar com interações de forma responsiva. Para obter mais informações sobre o teste de carga de aplicativos Web, consulte ASP.NET Teste de carga/estresse principal.

Considerações de teste

Tenha em mente que há práticas recomendadas para escrever testes. Por exemplo, falamos em TDD (Desenvolvimento Orientado por Testes) quando um teste de unidade é escrito antes do código que ele é destinado a verificar. TDD é como criar uma estrutura de tópicos para um livro antes de escrevê-lo. O teste de unidade ajuda os desenvolvedores a escrever um código mais simples, legível e eficiente.

Ferramentas de teste

O .NET é uma plataforma de desenvolvimento de vários idiomas e você pode escrever vários tipos de teste para C#, F# e do Visual Basic. Para cada um desses idiomas, você pode escolher entre várias estruturas de teste.

xUnit

xUnit é uma ferramenta de teste de unidade gratuita, de software livre e focada na comunidade para .NET. O inventor original da NUnit v2 escreveu xUnit.net. xUnit.net é a tecnologia mais recente para aplicativos .NET de teste de unidade. Ele também funciona com ReSharper, CodeRush e TestDriven.NET. xUnit.net é um projeto do .NET Foundation e opera sob seu código de conduta.

Para obter mais informações, consulte os seguintes recursos:

NUnit

NUnit é uma estrutura de teste de unidade para todos os idiomas do .NET. Inicialmente, o NUnit foi portado do JUnit e a versão de produção atual foi reescrita com muitos novos recursos e suporte para uma ampla gama de plataformas .NET. É um projeto do .NET Foundation.

Para obter mais informações, consulte os seguintes recursos:

MSTest

mstest é a estrutura de teste da Microsoft para todos os idiomas do .NET. Ele é extensível e funciona com a CLI do .NET e o Visual Studio. Para obter mais informações, consulte os seguintes recursos:

Executor MSTest

O executor MSTest é uma alternativa leve e portátil para VSTest para executar testes em pipelines de CI (integração contínua) e no Gerenciador de Testes do Visual Studio. Para obter mais informações, consulte Visão geral do executor MSTest.

CLI do .NET

Você pode executar um teste de unidade da solução no .NET CLI com o comando dotnet test. A CLI do .NET expõe a maior parte das funcionalidades que as IDEs (Ambientes de Desenvolvimento Integrado) disponibilizam por meio das interfaces de usuário. A CLI do .NET é multiplataforma e está disponível para uso como parte de pipelines de integração e entrega contínuas. A CLI do .NET é usada com processos com script para automatizar tarefas comuns.

IDE

Se você estiver usando o Visual Studio ou o Visual Studio Code, há interfaces gráficas do usuário para testar a funcionalidade. Há mais recursos disponíveis para IDEs do que a CLI, por exemplo, live unit testing. Para obter mais informações, consulte Incluindo e excluindo testes com o Visual Studio.

Consulte também

Para obter mais informações, consulte os seguintes artigos: