C#:
Testien kirjoittaminen

Miten:

C#-kehittäjät käyttävät pääasiassa NUnit- tai xUnit-kehyksiä testien kirjoittamiseen niiden joustavuuden ja laajan ominaisuusjoukon vuoksi. Tässä on perusesimerkki, jossa NUnitia käytetään yksinkertaisen yhteenlaskufunktion testaamiseen:

  1. Asenna NUnit ja NUnit3TestAdapter NuGet Package Managerin tai .NET CLI:n kautta:
dotnet add package NUnit
dotnet add package NUnit3TestAdapter
  1. Luo C#-luokkakirjastoprojekti, jos et ole vielä tehnyt niin.

  2. Kirjoita yksinkertainen funktio testattavaksi. Esimerkiksi yhteenlaskumenetelmä luokassa nimeltä Calculator:

public class Calculator
{
    public int Add(int a, int b)
    {
        return a + b;
    }
}
  1. Kirjoita testiluokka käyttäen NUnitia:
using NUnit.Framework;

namespace CalculatorTests
{
    [TestFixture]
    public class CalculatorTests
    {
        [Test]
        public void Add_AddsTwoIntegers_ReturnsCorrectSum()
        {
            // Arrange
            var calculator = new Calculator();
            int expected = 5;

            // Act
            int actual = calculator.Add(2, 3);

            // Assert
            Assert.AreEqual(expected, actual);
        }
    }
}
  1. Suorita testi käyttäen IDE:si testiajo-ohjelmaa tai .NET CLI:tä:
dotnet test

Esimerkkituloste:

Olettaen, että testisi läpäisee, sinun pitäisi nähdä tuloste, joka muistuttaa tätä:

Test Run Successful.
Total tests: 1
     Passed: 1
 Total time: 1.2345 Sekuntia

Käyttäen xUnitia:

Jos mieluummin käytät xUnitia, asennus on samankaltainen kuin NUnitilla. Näin kirjoitat testiesimerkin Calculator-luokalle käyttäen xUnitia:

  1. Asenna xUnit ja xUnit.runner.visualstudio:
dotnet add package xUnit
dotnet add package xUnit.runner.visualstudio
  1. Kirjoita testiluokka käyttäen xUnitia:
using Xunit;

namespace CalculatorTests
{
    public class CalculatorTests
    {
        [Fact]
        public void Add_AddsTwoIntegers_ReturnsCorrectSum()
        {
            // Arrange
            var calculator = new Calculator();
            int expected = 5;

            // Act
            int actual = calculator.Add(2, 3);

            // Assert
            Assert.Equal(expected, actual);
        }
    }
}
  1. Suorita testi käyttäen .NET CLI:tä tai IDE:si integroitua testiajo-ohjelmaa.

Sekä NUnit että xUnit tarjoavat tehokkaita ominaisuuksia parametrisoituun testaukseen, pystytys/purkutoiminnoihin ja testien järjestämiseen kategorioihin, mikä tekee niistä korvaamattomia työkaluja C#-ohjelmoijan työkalupakkiin koodin laadun ja toiminnallisuuden varmistamiseksi.