TDD (разработка через тестирование) — это методология разработки, при которой сначала пишутся тесты, а затем код, проходящий эти тесты.
Основные этапы TDD
- Написание теста. Создаётся юнит-тест, описывающий желаемое поведение кода. Новый тест изначально должен завершиться с ошибкой, так как соответствующая функциональность ещё не реализована.
- Реализация кода. Разработка функционала, необходимого для успешного прохождения теста.
Пример TDD в C#
Пример демонстрирует создание простого калькулятора с использованием xUnit:
Написание теста
using Xunit;
public class CalculatorTests
{
[Fact]
public void Add_ReturnsCorrectSum()
{
var calculator = new Calculator();
int result = calculator.Add(2, 3);
Assert.Equal(5, result);
}
}
При первом запуске тест завершится с ошибкой, так как класс Calculator
и метод Add
ещё не реализованы.
Реализация кода
public class Calculator
{
public int Add(int a, int b)
{
return a + b;
}
}
Теперь тест успешно проходит, подтверждая корректность работы метода.