Введение в написание тестов и знакомство с xUnit

от автора

Идея статьи возникла после нескольких лекций о том, как писать тесты и как испольщовать xUnit. Обо всём можно по отдельности почитать подробно. Здесь же я собрал общую информацию о том, как удачно на практике всё это применяется и сопроводил ссылками, для дальнейшего ознакомления.

Соглашения в коде

Распространённая практика помещать все тестовые проекты в отдельный фолдер. Это относится и к структуре фолдеров на диске и к фолдерам в солюшене. Практика распространена именно благодаря удобству. Так же, имя проекта и пространство имен полностью повторяют тестируемый модуль с добавлением в конце слова Tests (обычно через точку). Для простоты поиска тестов все тесты, относящиеся к некоторому классу помещаются в его класс с тестами. Т.о. получается пара из оргигинального класса и класса с тестами. Разделение между юнит, интеграционными, нагрузочными происходит либо по категорям, либо по логике основной системы. Это значит, что если интеграционные тест нельзя отнести к одному классу (обычно, это так), то они выносятся в отдельную сборку, посвященную тестируемому функционалу. Или, например, нагрузочные тесты могут тестировать работу некоторого метода одного класса. В этом случае тест размещается в парном классе. Структура самих тестовлюбого типа соответствует стилю AAA. Систематизируем вышесказанное:

  • Расположение проекта: в фодре Tests
  • Имя тестового проекта: [ProjectName].Tests
  • Пространство имен: [Namespace].Tests
  • Имя класса с тестами: [Class]Tests
  • Пара 1-1 изи тестируемого класса и класса с тестами
  • Наименование юнит-тестов: BDD (read more)
  • Стиль тестов: AAA (Arrange-Act-Assert)

ссылка на оригинал статьи https://geektimes.ru/post/272994/


Комментарии

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *