Size: a a a

2018 October 04

В

Вячеслав in Laravel UA
Роман Игумнов
Я вот не могу по тестированию вот что понять. Есть Phpunit тесты типа стандарт а есть модифицированные типа $this->visit в чем отличие то. Что изучать то
Автотесты можно поделить на 3 типа:
- Браузерные
- Интеграционные
- Модульные

Те, которые делаются с помощью $this->visit… - это интеграционные, либо браузерные, если использовать Laravel Dusk.

Интеграционные тесты подразумевают  под собой тестирование функциональности, к примеру api endpoint.

Модульный - тестирует мелкую часть приложения, к примеру один класс или метод.

Браузерный грубо говоря как интеграционный, только имитирует действия пользователя, путём запуска браузера и выполнения алгоритма.
источник

YP

Yurii Prudskyi in Laravel UA
Роман Игумнов
Я вот не могу по тестированию вот что понять. Есть Phpunit тесты типа стандарт а есть модифицированные типа $this->visit в чем отличие то. Что изучать то
Есть 2 вида тест энжайнов в ларавеле - с заходом на страницу ("браузерные") и без. Те, которые без - это практически чистый пхпюнит с добавлением полезных методов. Шлем пост туда-то, получаем такой-то респонс, смотрим, что в базе появилось поле. Либо дергаем метод класса и смотрим, что он нам вернет.
С другой категорией тестов сложнее, раньше в ларавеле был Кравлер, который имитировал заход на страницу (а по факту просто тырил отрендеренный код вьюхи) и всякие нажатия. Если я не ошибаюсь, то ты юзал именно его. Преимущества - быстрый, простой, удобный. Недостатки - не может в джаваскрипт. А потом его выпилили (вроде в 5.3) и сказали "вот вам Даск, юзайте, он может в джаваскрипт". Даск медленный и не очень удобный, но тут дело привычки.
источник

РИ

Роман Игумнов in Laravel UA
Т.е получается что тестирование это даже отдельная специальность?
источник

РИ

Роман Игумнов in Laravel UA
Просто интересно в компаниях программисты пишут тесты сами?
источник

YP

Yurii Prudskyi in Laravel UA
я думаю, во многих. Специфика автотестов такая, что лучше всего их напишет тот, кто писал код. Ну либо наоборот, если тдд) Но левому человеку это сделать крайне тяжело, какой бы скилловый он не был. Хотя на эту тему можно спорить вечно, сколько людей - столько и мнений
источник

YP

Yurii Prudskyi in Laravel UA
есть какие-то устоявшиеся вещи, что юнит тесты - это точно забота программиста, а, скажем, нагрузочные - чаще всего забота тестировщика. А все, что между, зависит от компании и принятых там стандартов.
источник

РИ

Роман Игумнов in Laravel UA
Я понял! Спасибо тебе огромное. Тесты конечно это вещь!
источник

В

Вячеслав in Laravel UA
Yurii Prudskyi
конкретно про тесты, очень хороша эта штука: https://course.testdrivenlaravel.com/ . По крайней мере, фри видос) А покупать ли весь курс - решай сам
Хороший курс, ещё давно приобрёл
источник

YP

Yurii Prudskyi in Laravel UA
я приобрел, но, к своему стыду, так и не посмотрел полностью. Смотрел выборочно интересующие темы только
источник

В

Вячеслав in Laravel UA
Роман Игумнов
Просто интересно в компаниях программисты пишут тесты сами?
Тесты к своему коду пишет конечно сам разработчик, особенно если используешь TDD подход, он изначально подразумевает написание тестов.
источник

РИ

Роман Игумнов in Laravel UA
Я понял! Я только не могу понять - это же сколько времени я буду писать магазин))))
источник

YP

Yurii Prudskyi in Laravel UA
быстрее, чем чинил бы багло при отсутствии тестов)
источник

YP

Yurii Prudskyi in Laravel UA
но иногда заказчику это тяжело объяснить
источник

В

Вячеслав in Laravel UA
Определённо дольше чем без тестов 😄
Но зато багфиксинг займёт в разы меньше времени
источник

РИ

Роман Игумнов in Laravel UA
))) ну это да.
источник

РИ

Роман Игумнов in Laravel UA
Заказчики больше 500$ платить не хотят))))
источник

YP

Yurii Prudskyi in Laravel UA
но, опять же, не для всех проектов оно нужно. Если пишешь чет для себя, чтоб опробовать подход или технологию, тесты можно не писать)
источник

РИ

Роман Игумнов in Laravel UA
Но конечно хочется делать по человечески. И научится делать правильно
источник
2018 October 05

AK

Alex Kovalchuk in Laravel UA
Yurii Prudskyi
но, опять же, не для всех проектов оно нужно. Если пишешь чет для себя, чтоб опробовать подход или технологию, тесты можно не писать)
Окрім тих поектів де опробовуєш самі тести звичайно)
источник

AK

Alex Kovalchuk in Laravel UA
Alex Kovalchuk
Окрім тих поектів де опробовуєш самі тести звичайно)
Хмм в голові звучало смішно
источник