Задать вопрос
@kirill-93

Практическое руководство к написанию тестов?

Здравствуйте!
Подскажите, пожалуйста, толковый ресурс (учебник, статью, видеоматериал) по тому, как правильно тестировать приложение.
Есть работающий сайт с хорошей посещаемостью, а тестов нет. Выкладывать новые фичи, если они чуть сложнее, чем примитивные, стало страшно. Сайт достаточно объемный - бэкэнд на Laravel и клиент на Vue.
Подскажите, как человеку, который никогда тесты не писал, покрыть готовый проект тестами и спать спокойно?
Много материалов смотрел, везде вот такие тесты:
assertTrue(1 === 1);
assertFalse(2 === 1);

Может быть есть более подробный материал по тому, где тестировать, как тестировать, почему именно так тестировать и тд?
Спасибо.
  • Вопрос задан
  • 277 просмотров
Подписаться 4 Простой Комментировать
Пригласить эксперта
Ответы на вопрос 3
Maksclub
@Maksclub Куратор тега PHP
maksfedorov.ru
Так как проект боевой, то придется делать не так как в учебниках:
- Сначала нужно будет писать приемочные/функциональные тесты (тк юнит-тесты скорее всего будут ни к месту, да и покрывать все кейсы будет долго) на критичные места и те, на которые дотянетесь
- Новые фичи должны максимально возможно покрыты юнитами, и по пути старые кейсы, которых затрагивают изменения. Там где не возможны юниты -- делайте функциональные
- Старайтесь делать тесты на места, которые меняются
- Помогайте тестам: пишите код с declare(strict_types=1), чтобы сам код отчасти себя тестировал и был уверен в аргументах, пишите код проще и надежнее

Чисто практические аспекты -- ну тут нюансов много, целые учебники

Отдельно:
- Возьмите Codeception к примеру как тестовый фулл-стек фреймворк
- Учитесь, у меня например :) (в личку)
Ответ написан
Комментировать
10435780
@10435780
завтра реализую
Ответ написан
Комментировать
Ommonick
@Ommonick
qa+dev (scala, golang, ts/js, api, grpc)
Начать стоит с вопроса "что тестировать?"(то есть про тест-дизайн)
и закончить вопросом "как тестировать"(технологии)

Условно выделите ключевой функционал вашего приложения.

например если это блог, то краткий чеклист по категориям примерно такой:

Пользователи:
Регистрация
Авторизация
Смена пароля / восстановление

Социальная часть:
публикация сообщений
комментарии к сообщениям
настройки приватности

После составления списка и дополнения его разными критичными замечаниями посчитайте сколько занимает проверка работы приложения по списку во время очередного регресс-тестирования.
После этого нудные / массовые сценарии автоматизируйте.
Ответ написан
Комментировать
Ваш ответ на вопрос

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

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