Второй день мучаюсь с юнит тестированием... Уже глянул laravel daily, почитал Занстру - ни*уя не понятно! После вашего видео, начал хоть что-то делать, все очень доходчиво и вполне интересно. P.S. Вставочки и отступления бесценны, первые 20 минут засыпал как и на всем остальном, но потом включился. Паша - вы такой няша :3
Благодарю, вопрос качества звука стоял передо мной очень остро, потому что я очень не люблю слушать, пусть даже очень крутые лекции или блоги, голос которых записан на коленке с кучей шума и искажений. Плюс хороший микрофон и звуковушка стоят не так уж и дорого. Но когда есть хороший микрофон возникает новая проблема, а именно нормализация записанного голоса, но это уже вопрос моего перфекционизма :)
Ну это пока всего две записи, потом возможно будет больше, основная причина почему целая таблица для всего пару строк так это ссылки и ограничение по внешнему ключу, чтобы записи с неправильным языком в других таблицах, которые на languages ссылаются, нельзя было добавить.
На 14:40 автор говорит, что объект будет создан, но не будет занесён в БД. Это не так. Просто после тестирования идёт откат изменений в БД, и этот откат может происходить по разному, в зависимости от трейта, используемого в тесте. См. в документации Трейты тестирования.
Спасибо за видео. У меня вопрос. Есть ли смысл на классы test вешать интерфейсы, создавать абстрактные классы , что бы как то структурировать классы? И есть ли смысл делать тесты на структуру бд(название и тип полей)?
Добрый день! Благодарю за комментарий, рад что видеоролик понравился, у меня много подобного материала. На данный момент только что закончил цикл Laravel Lighthouse (это такой плагин для создания API сервера на GraphQL), ещё сегодня будет стрим про один OpenSource проект на Laravel в 1800 MSK. В дальнейшем есть куча планов и идей ожидающих воплощения, ещё бы времени свободного было бы чуть побольше :)
Приветствую! Конечно можно, но только надо будет не забыть указать TestCase ларки в качестве extends у нового теста, если этого не сделать тестировать ларку не получится, потому что ядро приложения не будет инициализироваться как надо и все тесты будут выдавать ошибки.
Добрый день! Благодарю за комментарий, Вы правы, метод create на самом деле выполняет процедуру записи в базу, просто я забыл в самом начале видео сказать про трейт, который выполняет удаление созданных в процессе выполнения тестов записей. Об этом уточняю в следующем видео th-cam.com/video/PNfJagDwX0Q/w-d-xo.html
Всё верно, сижу на SSD дисках уже наверно лет восемь, как только они стали стоить не космических денег перестал покупать жестаки для рабочих машинок. Но знаю о то что SSD не такие живучие как жестаки, поэтому все бэкаплю на сервер с рейдом, в случае переустановки системы это сильно выручает.
Добрый вечер! Благодарю за комментарий, ну что поделать, программирование est non .... canina :)) со стороны кажется что написать тесты дело элементарное, а как начинаешь их сам писать сразу понимаешь, что задача явно не из простых, особенно если есть стремление к максимальному покрытию кода тестами. Да и несложно объяснить сложное тоже задачка та ещё, я как уж на сковородке извивался пытаясь максимально просто рассказать про тесты, по видео это хорошо слышно и видно ;) UPD. Кстати. вот небольшое дополнение th-cam.com/video/PNfJagDwX0Q/w-d-xo.html
Какой же вы крутой, как вам все легко удается манипулировать с данными, видать опыт у вас большой, а я только начинаю))
Второй день мучаюсь с юнит тестированием... Уже глянул laravel daily, почитал Занстру - ни*уя не понятно! После вашего видео, начал хоть что-то делать, все очень доходчиво и вполне интересно.
P.S. Вставочки и отступления бесценны, первые 20 минут засыпал как и на всем остальном, но потом включился. Паша - вы такой няша :3
Интересная тема, добавил в очередь просмотра :) Спасибо
Пожалуйста :) Кстати, обратите внимание на UPD видос про тестирование. там я пару моментов уточнил.
музыка на заднем плане с ума сводит, а так супер
Спасибо за видео. Очень обширно и понятно =)
19:45 "Юзерсы, моя прелесть"))... Простите, я большой фанат Властелина Колец. Очень напомнило как Горлум там говорит "Хоббитсы"))
Вы правильно заметили, именно такого эффекта я и хотел добиться :)
20:05 Так вот же $this->call() это и есть этот механизм, можно вкладывать его в другие сидеры и таким образом выстраивать зависимости)
Видосы хорошие. Звук тоже неплохой.
Благодарю, вопрос качества звука стоял передо мной очень остро, потому что я очень не люблю слушать, пусть даже очень крутые лекции или блоги, голос которых записан на коленке с кучей шума и искажений. Плюс хороший микрофон и звуковушка стоят не так уж и дорого.
Но когда есть хороший микрофон возникает новая проблема, а именно нормализация записанного голоса, но это уже вопрос моего перфекционизма :)
18:38 целая таблица для двух записей?
Ну это пока всего две записи, потом возможно будет больше, основная причина почему целая таблица для всего пару строк так это ссылки и ограничение по внешнему ключу, чтобы записи с неправильным языком в других таблицах, которые на languages ссылаются, нельзя было добавить.
На 14:40 автор говорит, что объект будет создан, но не будет занесён в БД. Это не так. Просто после тестирования идёт откат изменений в БД, и этот откат может происходить по разному, в зависимости от трейта, используемого в тесте. См. в документации Трейты тестирования.
Спасибо за видео. У меня вопрос. Есть ли смысл на классы test вешать интерфейсы, создавать абстрактные классы , что бы как то структурировать классы? И есть ли смысл делать тесты на структуру бд(название и тип полей)?
Спасибо Вам!
Приятно слушать
Добрый день! Благодарю за комментарий, рад что видеоролик понравился, у меня много подобного материала.
На данный момент только что закончил цикл Laravel Lighthouse (это такой плагин для создания API сервера на GraphQL), ещё сегодня будет стрим про один OpenSource проект на Laravel в 1800 MSK.
В дальнейшем есть куча планов и идей ожидающих воплощения, ещё бы времени свободного было бы чуть побольше :)
Все хорошо, по делу, но только они не фьюча (future) тесты, а фича (feature) тесты, в смысле интеграционные
найс!
23:07 а разве так же нельзя создать тест через пкм на класс и указать папку?
Приветствую! Конечно можно, но только надо будет не забыть указать TestCase ларки в качестве extends у нового теста, если этого не сделать тестировать ларку не получится, потому что ядро приложения не будет инициализироваться как надо и все тесты будут выдавать ошибки.
спасибо
Нужны таймкоды в описании
Добрый день! Благодарю за комментарий, постараюсь учесть Ваше предложение в будущем.
14:00 у меня на этом моменте реально пишет в БД
Добрый день! Благодарю за комментарий, Вы правы, метод create на самом деле выполняет процедуру записи в базу, просто я забыл в самом начале видео сказать про трейт, который выполняет удаление созданных в процессе выполнения тестов записей. Об этом уточняю в следующем видео th-cam.com/video/PNfJagDwX0Q/w-d-xo.html
Глобальные функции, как это весело) на самом деле не стоит так делать хелперы, для этого есть статические методы класса
Я так понимаю у тебя не SSD судя по скорости рефреша бд
Всё верно, сижу на SSD дисках уже наверно лет восемь, как только они стали стоить не космических денег перестал покупать жестаки для рабочих машинок.
Но знаю о то что SSD не такие живучие как жестаки, поэтому все бэкаплю на сервер с рейдом, в случае переустановки системы это сильно выручает.
спс
То чувство когда постоянно нажимал ctrl + F5 при разработке сайта
-А что так можно было!?
39:00 Если запустить тест в 16:01:(59.6 секунд), то тест не пройдет xD. Но это мелочи
Ой, придираетесь к примеру :) Но согласен, получилось как-то тупо.
Да шучу же я
Сервайс? :))) Сервис, как и по-русски )))
Лучше юзать trait чтобы подключить специфичные функции в конкретном классе, а не тащить всё на глобальный уровень
Добрый день! Благодарю за комментарий, Вы правы, так делать лучше, но не всегда удобно :)
Спасибо! Нууууу..... очень много говоришь, понимаю, что все по теме говоришь, но так все запутано:)
Добрый вечер! Благодарю за комментарий, ну что поделать, программирование est non .... canina :)) со стороны кажется что написать тесты дело элементарное, а как начинаешь их сам писать сразу понимаешь, что задача явно не из простых, особенно если есть стремление к максимальному покрытию кода тестами.
Да и несложно объяснить сложное тоже задачка та ещё, я как уж на сковородке извивался пытаясь максимально просто рассказать про тесты, по видео это хорошо слышно и видно ;)
UPD. Кстати. вот небольшое дополнение th-cam.com/video/PNfJagDwX0Q/w-d-xo.html
Почему ты злой?)
Привет! В качестве псевдонима выбрал себе противоположность одной из самых преобладающих черт моего характера.