TDD для чайников

Feb 27 2023
В моей карьере разработчика программного обеспечения, до недавнего времени, я никогда так не интересовался тестами, потому что не понимал их реальной ценности. После некоторого исследования, изучения и проверки концепции теперь я могу писать о тестах и ​​о том, почему использовать TDD в вашей повседневной рутине программирования.

В моей карьере разработчика программного обеспечения, до недавнего времени, я никогда так не интересовался тестами, потому что не понимал их реальной ценности . После некоторого исследования, изучения и проверки концепции теперь я могу написать о тестах и ​​о том, почему следует использовать TDD в вашей повседневной рутине программирования .

Во-первых, что такое TDD?

Нет, это не тестовый шаблон, TDD — это аббревиатура от Test Driven Development и работает с циклами:

Цикл TDD

Источник: Контроль качества воздействия.

  • Первый шаг: вы создадите юнит-тест, который не пройдет, да, не пройдет ! потому что ваш тест всегда на первом месте, чем ваш производственный класс. Хороший первый тест, который я всегда использую, — убедиться, что мой класс или функция вызывается с правильными значениями.
  • Второй шаг, в вашем производственном классе напишите только необходимый код, чтобы ваш тест прошел , наберитесь терпения, оно того стоит.
  • Третий и последний шаг, время рефакторинга ! теперь вы будете делать наилучший код для производственного класса, использовать предпочитаемые шаблоны и получать код как можно быстрее.

Идея этих циклов состоит в том, чтобы унитарно классифицировать поведение ваших классов, чтобы всегда гарантировать, что ваш код будет делать то, что вы хотите, без серьезных проблем. Иногда вы можете забыть протестировать ошибку или функцию, но с помощью трех простых шагов вы можете решить ее ( НАЧНИТЕ ТЕСТИРОВАНИЕ ПРЯМО СЕЙЧАС ).

Преимущества использования TDD

  • Избегайте сложного кодирования, всегда ли вы думаете о том, что вам нужно сделать, прежде чем сделать это, или вы предпочитаете не знать, что вы делаете, прежде чем сделать это?
  • Рефакторинг кода все время;
  • Полное покрытие ваших классов, у вас всегда будет информация о том, как работает ваш код и прошел ли он все тесты;
  • Упрощает удаление файлов и помогает при необходимости вносить изменения в код;
  • Избегает переделок во многих отношениях
  • Нет, дополнительное время для тестирования сэкономит вам много работы.
  • Jest работает с JavaScript:
  • JUnit , работает с Java:
  • Pytest , работает с Python:
  • PHPUnit , работает с PHP:
  • XUnit , работает с . NET Framework:

Спасибо за чтение, увидимся позже! любое предложение?