Изучаем юнит-тестирование с NUnit на C#

Изучаем юнит-тестирование (автономное тестирование) и соответствующие концепции типа дублёров (mocks) + введение в TDD

Ratings 4.36 / 5.00
Изучаем юнит-тестирование с NUnit на C#

What You Will Learn!

  • Писать юнит-тесты
  • Запускать и отлаживать юнит-тесты
  • Писать дублёры (моки) вручную
  • Писать дублёры с помощью фрэймворка для написания дублёров
  • Практиковать разработку через тестирование (TDD)
  • Применять лучшие практики разработки юнит-тестов

Description

Создайте с помощью этого курса прочную основу для понимания юнит тестирования.

Вся суть курса заключается в том, чтобы научить вас писать эффективные юнит тесты при помощи языка программирования C#, а также NUnit в качестве фреймворка юнит тестирования. По пути мы изучим концепции, связанные с юнит-тестированием. Сегодня юнит тестирование - это абсолютно необходимый навык, и владение им требуется от каждого профессионального разработчика. Компании предполагают, что разработчики умеют писать юнит тесты, включая все наиболее важные навыки, такие как изолирующая (подставная) разработка и разработка через тестирование (вкратце TDD). Этот курс не охватывает все функции NUnit. Он намного интереснее. 

Изучение юнит тестирования даёт вам в руки мощный и крайне полезный инструмент. Понимая юнит тестирование, вы можете писать надёжные и простые в обслуживании приложения. Очень сложно работать над проектом, где юнит тестирование не поддерживается. 

Содержание и обзор 

Этот курс в первую очередь ориентирован на начинающих разработчиков. Он обеспечивает прочную теоретическую базу, подкреплённую большим количеством практического материала. 

Мы начнём с основ юнит тестирования. Что такое юнит тестирование? Какие фреймворки юнит тестирования существуют? Как прогонять юнит тесты, и как их отлаживать? Ознакомившись с основами, мы перейдём к фреймворку NUnit. Вы узнаете как устанавливать фреймворк и запускать тесты. Затем мы поговорим об основах утверждений и модели подготовка-действие-утверждение (Arrange/Act/Assert). Также мы разберём такие особенности NUnit как: 

  • Запуск тестов из консоли 

  • Подготовительные и очищающие юнит тесты 

  • Параметризованные тесты 

  • Группировка и игнорирование тестов

Практикуясь в написании юнит тестов, невозможно избежать применения подставок. В целом, мне больше нравится слово «дублёр». Кстати, вы узнаете, в чём заключается разница между следующими понятиями: 

  • Дублёр 

  • Подделка 

  • Пустышка 

  • Заглушка 

  • Подставка 

Вы узнаете, как вручную прописывать дублёры. Также на простом примере мы посмотрим, как использовать для работы с подставками. Для демонстрации я буду использовать фреймворк NSubstitute. 

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

Отдельно мы изучим основы разработки через тестирование (TDD). Сложно представить современного профессионального разработчика, который не знает что это такое, поэтому мы подробно разберем, в чём заключается разработка через тестирование. Также мы посмотрим на методику «красный-зелёный-рефакторинг» в действии. 

Этот курс был бы неполным без лучших практик по написанию юнит тестов. Мы рассмотрим основные концепции современного подхода к юнит тестированию под названием «прагматическое юнит тестирование». Вы увидите, какие проблемы ставят статические классы и объекты-одиночки перед юнит тестированием. Они усложняют юнит тестирование кода. Затем мы поговорим о проблемах, связанных с извлечением интерфейсов только ради создания прокладки (shim) для внедрения зависимостей. 

Вы узнаете, нужно ли писать юнит тесты для тривиального кода. Ещё больше вы узнаете в курсе. 

Итак, вкратце, курс охватывает следующие темы: 

  • Основные понятие юнит тестирования 

  • NUnit и его основные особенности 

  • Дублёры, включая подделки, пустышки, заглушки, шпионы и подставки 

  • Как писать ручные дублёры и как использовать подставной Фреймворк 

  • Разработка через тестирование (TDD), методика «красный-зелёный-рефакторинг» 

  • Множество лучших практик по написанию юнит тестов 

Наконец, мы повторим всё изученное и попробуем понять, что делать дальше, чтобы лучше овладеть полученными навыки. 

Подход к обучению 

Никакой болтовни и лишней информации. Я ценю ваше время. Это краткий, но комплексный курс. Все важные концепции охвачены. Особо важные темы мы разберём более подробно. 

Зачисляйтесь на курс и удовлетворите свои потребности в новых знаниях! 

Who Should Attend!

  • Начинающие C#-программисты, желающие начать изучение юнит-тестирования

TAKE THIS COURSE

Tags

  • C#
  • Nunit
  • TDD Test Driven Development
  • Unit Testing

Subscribers

418

Lectures

53

TAKE THIS COURSE



Related Courses