C#:
Написание тестов
Как это сделать:
Давайте рассмотрим некоторый код на C# с использованием NUnit, популярного фреймворка для тестирования:
- Настройте вашу среду для тестирования - обычно включается как пакет NuGet.
- Напишите тест для простой функции.
Вот быстрый пример теста для метода Sum
:
using NUnit.Framework;
namespace CalculatorTests {
public class Calculator {
public int Sum(int a, int b) {
return a + b;
}
}
[TestFixture]
public class CalculatorTests {
[Test]
public void TestSum() {
var calculator = new Calculator();
var result = calculator.Sum(2, 3);
Assert.AreEqual(5, result);
}
}
}
Запустите тест. Если он пройден, вы увидите:
Test Passed
В противном случае вы получите детали о том, почему он не пройден.
Погружение глубже
Модульное тестирование развивалось с 1970-х годов. Заметные достижения включают разработку, управляемую тестами, и автоматизированные фреймворки для тестирования. Для C#, MSTest и xUnit являются надежными альтернативами NUnit. Основные моменты включают в себя:
- Исторический контекст: Кент Бек среди прочих разработал архитектуру xUnit, которая лежит в основе многих фреймворков.
- Альтернативы: MSTest является родным фреймворком тестирования от Microsoft, в то время как xUnit - это бесплатный инструмент с открытым исходным кодом.
- Детали реализации: Тесты должны быть изолированными, повторяемыми и быстрыми. Запускайте их как часть вашего процесса сборки.