C#:
Escrevendo testes
Como fazer:
Desenvolvedores C# usam principalmente os frameworks NUnit ou xUnit para escrever testes devido à sua flexibilidade e conjunto extensivo de recursos. Aqui está um exemplo básico usando o NUnit para testar uma simples função de adição:
- Instale o NUnit e o NUnit3TestAdapter via Gerenciador de Pacotes NuGet ou o CLI .NET:
dotnet add package NUnit
dotnet add package NUnit3TestAdapter
Crie um projeto de biblioteca de classes C# se você ainda não o fez.
Escreva uma função simples para testar. Por exemplo, um método de adição em uma classe chamada
Calculator
:
public class Calculator
{
public int Add(int a, int b)
{
return a + b;
}
}
- Escreva uma classe de teste usando NUnit:
using NUnit.Framework;
namespace CalculatorTests
{
[TestFixture]
public class CalculatorTests
{
[Test]
public void Add_SomaDoisInteiros_RetornaSomaCorreta()
{
// Arrange (Preparação)
var calculator = new Calculator();
int esperado = 5;
// Act (Ação)
int atual = calculator.Add(2, 3);
// Assert (Verificação)
Assert.AreEqual(esperado, atual);
}
}
}
- Execute o teste usando o executor de testes da sua IDE ou o CLI .NET:
dotnet test
Saída de Exemplo:
Assumindo que seu teste passe, você deverá ver uma saída semelhante a esta:
Execução de Testes Bem-Sucedida.
Testes totais: 1
Aprovados: 1
Tempo total: 1.2345 Segundos
Usando xUnit:
Se você prefere o xUnit, a configuração é semelhante ao NUnit. Aqui está como você reescreveria o exemplo de teste para a classe Calculator
usando o xUnit:
- Instale o xUnit e o xUnit.runner.visualstudio:
dotnet add package xUnit
dotnet add package xUnit.runner.visualstudio
- Escreva uma classe de teste usando o xUnit:
using Xunit;
namespace CalculatorTests
{
public class CalculatorTests
{
[Fact]
public void Add_SomaDoisInteiros_RetornaSomaCorreta()
{
// Arrange (Preparação)
var calculator = new Calculator();
int esperado = 5;
// Act (Ação)
int atual = calculator.Add(2, 3);
// Assert (Verificação)
Assert.Equal(esperado, atual);
}
}
}
- Execute o teste usando o CLI .NET ou o executor de testes integrado da sua IDE.
Tanto o NUnit quanto o xUnit oferecem recursos poderosos para testes parametrizados, operações de configuração/encerramento e organização de testes em categorias, tornando-se ferramentas indispensáveis no kit de ferramentas do programador C# para garantir a qualidade e funcionalidade do código.