Ответы пользователя по тегу Модульное тестирование
  • Какие еще преимущества у юнит-тестов, кроме того, что они отлично обеспечивают регрессионное тестирование?

    @jazzus
    500 ошибки это слишком просто, они в логах. Гораздо сложнее и грустнее обнаружить логическую ошибку, которая висела месяцами и никто не знал. Плюс, если ты уже код научился писать и юзаешь IDE, то все 500 ошибки будут в дев режиме. Тесты нужны, в первую очередь, для фиксации функционала и тз. Я пишу только http тесты и до разработки. Чтобы руками формы по 100 раз не забивать. А то я тут одно видео видел, где ларавельщик регистрацию проверял и с каждым изменением форму заново заполнял и отправлял. По мне так низкокачественная, скучная и неэффективная разработка. С тестами все проверки автоматом, просто разрабатываешь до зелени. И потом уверенно заливаешь на продакшн и знаешь, что все работает, как задумано, а не как получилось.
    Ответ написан
    6 комментариев
  • Как правильно проводить функциональное тестирование Laravel?

    @jazzus
    Почему на зеленой кнопке сверху отсутствует буква Ы?) Потому что на Тостере задают ОДИН конкретный вопрос. А не 15. Напишу в общем. Я пишу тесты перед разработкой, поэтому вопрос выбора "покрытия" не стоит. Я рекомендую этот вариант. Да, ты пишешь больше кода, но время разработки в итоге меньше т.к. разработка это постоянный дебаг кода и логики, которые без тестов нужно делать руками. Плюс качество/безопасность кода и тестов гораздо выше, есть подробное продуманное тз (в тестах), документация и свободная голова. По структуре - прописываю вначале setUp где задаю нужные данные, создаю объекты и тд и затем тесты. Дубликаты кода в пределах класса выношу в методы. В пределах всех тестов - в TestCase или трейты. Каждый тест(сценарий) запускает логику с нуля, но иногда связываю через @depends.
    Ответ написан
    Комментировать
  • В чем смысл юнит-тестов?

    @jazzus
    Я как фанат тестов, считаю своим долгом здесь отметиться. Скажу так. Покрывать тестами существующий функционал унылый отстой)) Скучная рутина. Я юзаю тесты исключительно в режиме TDD. Пишу перед разрабткой. И данный способ рекомендую. И в последнюю очередь ради тестирования. Тесты это самое лучшее тз, на котором не схалтуришь. Ты сам себе в тестах ставишь сложную задачу, описываешь результат и тестам пофигу как ты его добьешься. Сам процесс разработки становится горазо более интересным. Я вообще вначале пишу тесты на бумаге ручкой)) Ну не сами асерты естественно, а такое оглавление из задач. затем уже код. И когда фича написана в тестах только потом приступаю к разработке (про фронт даже в мыслях нет). Просто запускаешь тесты и пишешь код пока они не станут зелеными. Пишешь легко, быстро и со свободной головой. Ну то что тесты будут тестировать твой код в будущем, что ты можешь небоясь кардинально рефакторить логику и даже архитектуру это понятно. И то, что это самая актуальная документация. Это попса. Короче, я как тесты попробовал, ни одну фичу без тестов не писал. Даже непонятно с чего начинать писать код, если тестов нет. Роуты писать или кнопку.. Ужас. Короче рекомендую, как один из самых важных процессов в программировании. Писать тесты после функционала не рекомендую - очень скучно, не эффективно, скорее всего потеряется интерес и забьешь. Только tdd
    Ответ написан
    Комментировать
  • Писать ли Unit-тесты до готовности MVP?

    @jazzus
    Дело не только в поддержке кода. С тестами, если писать их до фичи, имхо самая продуктивная и быстрая разработка.
    Во-первых это детальное тз. А любое тз ускоряет процесс.
    Во-вторых не нужно шлепать браузером при кажом чихе. Заполнять формы руками и т.д. Плюс если несколько ролей доступа или связанные процессы, то руками проверять геморой.
    В третьих поддерживает код в дальнейшем, незаменим при рефакторинге и является отличной документацией. Нужно вспомнить процесс и какая логика - печатаешь тест на принтере и вспоминаешь под кофеек. Короче рекомендую.
    Ответ написан
    2 комментария