Как правильно разрабатывать приложение через тестирование?

Недавно начал знакомиться с разработкой через тестирование.

Понял, что есть 3 вида тестирования:
acceptance - приёмочное тестирование
functional - функциональное тестирование
unit - Модульное тестирование

Начал читать книгу "Бек - Экстремальное программирование Разработка через тестирование", в общем, теоретические знания появились.

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

В yii2 обеспечили поддержку тестирования с помощью codeception, я уже разобрался, как это дело работает, и готов приступать. Осталось только получить совет, как это сделать.

Я понял так, что unit тестирование в основном необходимо для библиотек. К примеру если передо мной стоит задача реализовать 2 модуля:
- модуль пользователей [авторизация, регистрация, восстановление пароля, редактирование профиля, добавить удалить и изменить пользователя в админке]
- и модуль статических страниц [показать страницу, добавить, удалить изменить страницу в админке]

По сути, тут я не использую никаких своих библиотек и unit тесты мне не нужны (если я не прав пожалуйста отметьте).

Как я знаю, необходимо начинать разработку с тестов, то есть мы пишем тест, он проваливается и мы пишем функционал. На основе моей задачи, я так понял, нужно воспользоваться приемочным тестированием ? То есть написать тест, который бы заходил на страницу и регистрировал нового пользователя? А только потом приступить к реализации функционала?
  • Вопрос задан
  • 3385 просмотров
Решения вопроса 1
rumkin
@rumkin
Попробуйте программирование через проектирование. Все остальное — частные случаи. Разрисовываете на бумаге схему работы приложения, модуля или метода. Если какой-то участок не удается спроектировать с первого раза, значит, вы плохо знаете предметную область, отлично, надо доизучить, изучаете и снова возвращаетесь к участку. Затем пишите тесты по каждому узлу, потом сам код или наоборот, это как вам удобнее/быстрее.
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
@MasterJedi
теоретические знания появились

Понял, что есть 3 вида тестирования

Что-то тут не сходится.
Учите матчасть.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы