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

  • Overview
  • Curriculum
  • Instructor
  • Review

About This Course

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

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

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

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

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

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

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

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

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

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

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

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

  • Дублёр

  • Подделка

  • Пустышка

  • Заглушка

  • Подставка

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

  • Писать юнит-тесты

  • Запускать и отлаживать юнит-тесты

  • Писать дублёры (моки) вручную

Course Curriculum

1 Lectures

1 Lectures

Instructors

Profile photo of Илья Фофанов
Илья Фофанов

Я благодарен за то, что люблю своё дело.Начинал карьеру, будучи аспирантом, участвуя в конкурсе программных проектов от Майкрософт - ImagineCup.Работал с платформой .NET с 2003 года. Профессионально занимался проектированием и реализацией ПО больше 10 лет, преимущественно на платформе .NET. Люблю работать над созданием богатых и мощных приложений с использованием современных технологий. Сертифицированный специалист по WPF и WCF. Один из координаторов...

Instructors

Profile photo of DevSchool • Progressive Training Solutions
DevSchool • Progressive Training Solutions

English:We produce the best software development courses aimed at students with different skills. Our courses are concise and informative. No fluff, no ranting, only the most useful information from experienced software developers and renowned leaders in the field of programming.Russian:Мы делаем лучшие видео курсы по программированию для студентов с разным уровнем знаний и навыков. Наши курсы кратки и информативны: без...

Review
4.9 course rating
4K ratings
ui-avatar of Evgenii Ruchkin
Evgenii R.
5.0
3 years ago

Качественно, как всегда

  • Helpful
  • Not helpful
ui-avatar of Ринат Ниязов
Ринат �.
5.0
3 years ago

Хороший курс

  • Helpful
  • Not helpful
ui-avatar of Valerii Maslennikov
Valerii M.
5.0
3 years ago

На 1.5 хорошая подача получается, хоть курс и пробегается по самым основам, но как точка откуда начать - самое то.

  • Helpful
  • Not helpful
ui-avatar of Fs
Fs
5.0
3 years ago

Отлично объясняется

  • Helpful
  • Not helpful
ui-avatar of Yulia
Yulia
1.0
4 years ago

Озвучка оставляет желать лучшего

  • Helpful
  • Not helpful
ui-avatar of Dmitriy Samofalov
Dmitriy S.
5.0
5 years ago

Отличный, компактный но информативный курс, который даёт необходимое представление как писать юнит-тесты, как использовать дулблеры mocks, а также дает представление о TDD и немного затрагивает лучшие практики тестирования. Подойдёт не новичкам в программировании, но тем, кто понимает необходимость написания качественных юнит-тестов.

  • Helpful
  • Not helpful
ui-avatar of Rosina Baranovska
Rosina B.
5.0
5 years ago

Отличный курс, хотелось бы курс по API testing.

  • Helpful
  • Not helpful
ui-avatar of Roman Ugryumov
Roman U.
5.0
5 years ago

С темой знаком, решил просто освежить в памяти в фоновом режиме. Преподаватель грамотный человек, ничего лишнего!

  • Helpful
  • Not helpful
ui-avatar of Vasiliy Kovrigin
Vasiliy K.
4.0
5 years ago

Хороший начальный курс.

  • Helpful
  • Not helpful
Leave A Reply

Your email address will not be published. Required fields are marked *

Ratings

Courses You May Like

Lorem ipsum dolor sit amet elit
Show More Courses