Введение

Существует множество способов протестировать ваше приложение. Модульное тестирование находится в нижней части пирамиды тестирования.

По мере того, как мы поднимаемся по пирамиде, время на выполнение тестирования также увеличивается. Это происходит главным образом потому, что в нижней части пирамиды мы наиболее изолированы. Следовательно, выполнять модульное тестирование быстрее по сравнению с другими, и это также намного дешевле.

Что такое модульное тестирование?

Модульное тестирование предназначено для тестирования вашего класса или функций без внешних зависимостей. Вы тестируете основную логику своего кода в полной изоляции.

По мере того, как мы продвигаемся вверх по пирамиде тестирования, мы также начинаем тестирование с внешними зависимостями и, наконец, наверху, мы тестируем сквозной поток приложения.

Настраивать

  • Откройте Visual Studio и создайте консольное приложение с .NET Framework.

Обратите внимание на один важный момент:

Однако здесь есть два консольных приложения: одно для .NET Core, а другое для .NET Framework, поэтому обязательно используйте одно с .NET framework. В противном случае вы столкнетесь с проблемами при ссылке на проект в проекте модульного тестирования.

  • После создания проекта просто добавьте класс, который мы собираемся протестировать. Я создал класс телефона.

Класс выше довольно прост. Одно свойство кредита, которое показывает текущий кредит. Кроме того, один общедоступный метод MakePhoneCall возвращает значение true или false в зависимости от того, можете ли вы позвонить или нет, в зависимости от кредита.

  • После создания классов в вашем консольном приложении нам нужно добавить проект модульного тестирования в ваше решение для написания модульного тестирования.

  • Теперь мы пишем определение тестового класса и тестового метода в вашем проекте модульного тестирования.

В тестовых классах мы должны добавить декораторы над классом и функциями, которые сообщают Visual Studio, что это тестовые классы и тестовые функции, которые необходимо запустить.

  • Теперь, когда мы создали класс, который необходимо протестировать, и класс, который будет выполнять тесты, давайте запустим эти тесты.
  • Перейдите к опции «Тест» и нажмите «Выполнить все тесты».

  • После запуска всех тестов он покажет вам результаты в Test Explorer.

  • Это показывает, что все тесты прошли успешно.

Заключение

Модульные тесты добавляют дополнительные затраты времени. Однако в то же время он экономит много времени, создавая более прочные сборки. Это дает вам много места для рефакторинга кода без риска нарушить логику. Можно легко провести рефакторинг кода и запустить модульные тесты, что дает большую уверенность в рефакторинге кода. Код также загружен на GitHub.