Вкатываемся в тестирование кода
HTML-код
- Опубликовано: 15 фев 2022
- 🔥 Онлайн-университет JavaRush - лучший способ научиться программировать на Java: javarush.ru/s/ExtremeCode
Промокод -50% на первый месяц обучения в JavaRush Университете: ExtremeCode. Промокод действителен только для новых пользователей до 31 марта 2022 г.
Девочка с мемеса вначале видоса: www.tiktok.com/@tired_actor/v...
Подпишись на наш Telegram Канал 🖤 t.me/extremecode
_____________________________________________________________
Лицензия Creative Commons Attribution 4.0 на использование трека Hyperfun (исполнитель: Kevin MacLeod): creativecommons.org/licenses/...
Источник: incompetech.com/music/royalty-...
Исполнитель: incompetech.com/ Наука
БРАТАН ХОРОШ ДАВАЙ ДАВАЙ ВПЕРЕД МОЖНО ЕЩЕ ВООБЩЕ КРАСАВЧИК. Можно вот этого вот почаще?
Давайте пока
БРАТАН ХОРОШ ДАВАЙ ДАВАЙ ВПЕРЁД МОЖНО ЕЩЁ ВООБЩЕ КРАСАВЧИК. Можно вот этого вот почаще?
Так а будет можно почаще-то или как уже?
БРАТАН ХОРОШ ДАВАЙ ДАВАЙ ВПЕРЕД МОЖНО ЕЩЁ ВООБЩЕ КРАСАВЧИК. можно вот этого вот почаще?
Братан, давай еще ))
БРАТАН ХОРОШ ДАВАЙ ДАВАЙ ВПЕРЕД МОЖНО ЕЩЕ ВООБЩЕ КРАСАВЧИК. Можно вот этого вот почаще?
5:17 "👍1 + 2 должно быть равно двум"
Лол, я не заметил даже. X D
Определенно нужны тесты на тесты 🤔
@@sergeykhairulin тесты на тесты, это похоже на мутационное тестирование уже!)))
@@sergeykhairulin а на них кто тесты делать будет?
@@FoxSlyme тесты. На которые тоже нужны тесты и на них тоже нужны тестыы
Общество: Программисту нужна математика
Программисты: программистам не нужна математика
Так же программисты: 5:30 - "1 + 2 должно быть равно двум"
Также* (СЛИТНО)
@@user-mm5ln4qh5q форточку открой, в данном случае допустимы оба варианта.
@@AionXIV нет, в данном случае твой вариант написания недопустим
@@AionXIV раздельный вариант имеет иное значение
уважаемый, вы смели допустить кощунство, ибо автор данного видеоролика ранее высказывался о, цитирую: "Программисты - люди с особенностями". В данном примере особенностью автора, как программиста, можно считать наличие дополнительной хромосомы.
Как это ни странно: это одно из немногих дико простых объяснений, что такое Unit-тесты. Спасибо
Братан, хорош! Давай-давай, вперёд - контент в кайф. Можно ещё? Вообще красавчик.
Спасибо, за 9 неполных минут чётко пояснил за тестирование кода ^_^
P.S. БРАТАН ХОРОШ ДАВАЙ ДАВАЙ ВПЕРЕД МОЖНО ЕЩЕ ВООБЩЕ КРАСАВЧИК. Можно вот этого вот почаще?
Братан хорош!!! Давай, давай вперёд!!! Контент в кайф. Можно ещё? Вообще красавчик! Можно вот этого вот почаще
Тест с собакой просто пушка :)))
Четко и доходчиво донесено, что тесты полезны
>в тестах ничего сложного нет
А потом сидишь пилишь моки API, инъекции зависимостей, собираешь классы по нескольким модулям и перепиливаешь мегабайтные json-ы/csv-шки чтобы затестить одну простую функцию.
А потом этот юнит-тест годами живет и не обнаруживает ни одной ошибки, потому что функцию никто не трогает.
Звучит так, словно процесс тестирования сильно запущен. Просто лично из своего опыта, бывали кейсы со сложной обработкой маловероятных событий и приходилось пилить тесты на все эти случаи, но когда все дошло до боя, все кейсы отработали как часы. Просто тут нужно понимать где надо их пихать, а где не надо.
Так надо было сразу писать тестируемо ( ͡° ͜ʖ ͡°)
@@EmeraldFeed да при чём тут запущенность. Ладно, чёрт с ним с API, но имитировать или собирать сложные классы иногда приходится. И иногда это больно. А если функция гоняет большие сложные объёмы данных (я про csv/json), то простые изменения в логике оборачиваются тем, что оные изменения имплиментируются за 5 минут, а тест кейсы перепиливаются например пол часа.
>все кейсы отработали как часы
Тут не на эту тему байт. Я про то что иногда тесты очень дорого стоят. Иногда имплиментация/изменение функционала занимают гораздо меньше времени, чем написание/перепиливание тест-кейсов.
>Просто тут нужно понимать где надо их пихать, а где не надо.
Да. Ток чёт пичаль-беда я нигде не вижу никакого консолидированного и обоснованного гайда/мнения на тему что именно покрывать юнит-тестами, а что нет. Best-practice на эту тему тупо не существует.
В итоге каждый проект пилит их как попало. Кто то просто ими защищает особо сложные куски логики, кто то не тестирует сайд-эффекты методов класса, а кто то тестирует, а кто то вообще за определенный процент кавереджа борится.
@@denisnovac2789 Без классов и сложных структур данных, ага. Пойду в секту функциональщиков запишусь.
как боженька молвил
Обожаю смотреть визуальное сопровождение ваших видосов, да и способ изложения материала классный. Все супер!
Видос "Вся суть чистого кода" от 08.10.21:
"99% тестов написаны просто так. Чем больше пишется тестов, тем больше появляется тестов, которые никогда не будут завалены." + расчет написания юнит-тестов в "55232 штанов за 40 хривень".
Какие варианты:
- Автор переосмылил свой опыт программирования?
- Дуализм Шредингера, только в коробке сидит программист и пишет юнит-тесты?
- После курса таблеток, шиза автора купировалась, и он решил реабилитировать тесты?
Рекламу же надо было запилить. Видео весьма сомнительное.
Автор практикуется в диалектике)
У него целая куча парных видосов где он в одном восхваляет технологию а в другом мешает с говном
Точно, точно)))
@@MrCortc Рекламу JavaRush пропустили.
как же ты слаб в постиронии
Хорошее видео Николай, хотел бы попросить вас больше никогда не выкладывать видеоматериалы в интернет
xD
Значит, их зовут Николай и Артём, да?
А теперь нужно видео где гвоорится почему тесты не нужны, пропускают проблемы и т.д. и баланс во вселенной восстановится.
Есть уже
Отлично объяснил, что такое тесты! Спасибо, жги 🔥 ещё!
Братан, хорош. Давай, давай вперёд! Контент в кайф. Можно ещё? Вообще красавчик.
братан хорош давай давай вперед контент в кайф можно ещё вообще крассавчик
Мужик, ваще хорош, давай продолжай, не останавливайся!
боже. как же вовремя. спасибо!
БРАТАН ХОРОШ ДАВАЙ ДАВАЙ ВПЕРЕД МОЖНО ЕЩЕ ВООБЩЕ КРАСАВЧИК. КОНТЕНТ В КАЙФ. Можно вот этого вот почаще?
Классно! Четко! Могёте! Молодцы вообще ребята!
Братан,хорош,давай давай.Вперед.Контент в кайф,можно еще,вообще красавчик.
Вообще очень даже полезный видос получился)
Спасибо!
Братан. Красавчик!!! Жги дальше
Братан хорош, давай-давай вперёд, контент в кайф, можно ещё вот этого всегоч вообще красавчик
Давно ждал видоса, приятно залипать в него
братан, харош, давай давай вперёд, контент в кайф, можно ещё, вообще красавчик
Братан харош, давай почаще!
Все ждут новых видосиков!
Братан, хорош, давай давай вперед, контент в кайф, можно еще, вообще красавчик!
Братан, харош, давай давай, вперед! Контент в кайф! Можно ещё, вообще красавчик!
Братан, хорош! Давай вперёд! Контент в кайф, можно ещё? Вообще красавчик! Можно вот этого почаще.
Братан хорош!!! Давай, давай вперёд!!! Контент в кайф. Можно ещё? Вообще красавчик! Можно вот этого вот почаще ?
Каеф! Хорош! Давай почаще!
братан, контент в кайф, давай почаще.
Братан давай ещё вперед! контент вообще красавчик
Контент кайф, вот тебе лайк, пили чаще!!1!1!!
Николай! Прекрасный видеоматериал, можно ещё больше!!!
Видео полезное, подача интересная. Давай ещё по больше такого
Братан, хорош!!! Давай, давай вперёд! Контент в кайф. Можно ещё? Вообще красавчик! Можно вот этого вот почаще.
Братан хорош, контент в кайф! Давай, ещё-ещё!! Можно вот этого вот по чаще))
Красавчик давай ещё и почаще ))
Тестирование - это в первую очередь соглашение. Соглашение о том, как должен работать тот или иной участок кода. Часто не нужно вдаваться в подробности реализации какого-то метода или функции, достаточно посмотреть её тесткейсы.
ПС
БРАТАН ХОРОШ ДАВАЙ ДАВАЙ ВПЕРЕД МОЖНО ЕЩЕ ВООБЩЕ КРАСАВЧИК. Можно вот этого вот почаще?
Спасибо, хороший контент и отличная подача.
Хорош братан, давай почаще
Прям вовремя, только сегодня закончил функциональные api тесты, которые писал с начала недели. Теперь можно и код написать. А всего-то, api метод возвращает в наборе данных одно изменённое поле.
Братан, лайк, душевные у вас видосы
Контент в кайф, давай еще братанчик.
БРАТАН ХОРОШ ДАВАЙ ДАВАЙ ВПЕРЕД! МОЖНО ЕЩЕ? ВООБЩЕ КРАСАВЧИК. Можно вот этого вот почаще?
Братан хорош! Давай-давай вперёд! Контент в кайф! Можно ещё! Вообще красавчик! Можно вот этого вот почаще. Давайте пока.
Братан, хорош!!! Давай, давай!!! Контент в кайф🥵💨💦👻
Вообще капитальный красавчик. Можно вот этого всего почаще 🔥🔥🔥
Не, ну ряльно хорош, братан, давай пили ещё, вообще в кайф!!!!
Братан, контент вообще в кайф, респект, можно еще? Вообще красавчик
БРАТАН ХОРОШ ДАВАЙ ДАВАЙ ВПЕРЕД МОЖНО ЕЩЕ ВООБЩЕ КРАСАВЧИК. Можно вот этого вот почаще? Видос реально кульный получился
Поправлю, от парацетамола печень отказывает, а так БРАТАН ХОРОШ ДАВАЙ ДАВАЙ ВПЕРЕД МОЖНО ЕЩЕ ВООБЩЕ КРАСАВЧИК. Можно вот этого вот почаще?
"1 + 2 должно быть равно двум" (с) ExtremeCode
Ух ты прям канал-открытие. Красафчик!
Лучший видос чтоб понять тесты❤️🔥
Братан хорош! Давай, давай, вперёд! Контент в кайф! Можно ещё? Вообще красавчик!
Понравилась твоя годнота. Толково мелишь.
Братан хорош!!! Давай, давай вперёд!!! Контент в кайф. Можно ещё? Вообще красавчик! Можно вот этого вот почаще.
Братан хорош, давай давай вперёд, контент в кайф, можно ещё, вообще красавчик. Можно вот этого почаще. Давайте пока.
Братан, хорош! Давай-давай, вперёд - контент в кайф.
можно еще, вообще красавчик
БРАТАН ХОРОШ ДАВАЙ ДАВАЙ ВПЕРЕД МОЖНО ЕЩЕ ВООБЩЕ КРАСАВЧИК. Можно вот этого вот почаще?
жду лайк от автора за оригинальность этого комментария
Многие пишут, что всё чётко и понятно, с чем я категорически согласен. Имхо, секрет в том, чего зачастую не делают при знакомстве с тестами. А именно, важно показать, что тест - это любая функция, которая вызывает твой код с какими-то параметрами и ожидающая конкретный результат. А не какой-то странный код, написанный в магическом it в магическом describe.
Обычно как происходит: тебе говорят, вот фреймворк, пиши тут it, там, describe, здесь кейсы и т.п. Ты, такой: что, зачем, почему?
А надо так: напиши код, который вызовет твою функцию с такими-то аргументами и проверит, что вернётся вот это, и результат выведет в консоль. Теперь повтори то же самое для этих выходных данных. А теперь для вот таких. А ещё для таких... На каком-то этапе ты подумаешь, какого хрена я дублирую код? Можно же написать общий метод, который будет... Вот ты и изобрёл тестовый фреймворк.
братан хорошо, контент кайф , давай давай вперед!
0:00 - 0:40
На фоне показана наглядная работа любого кода, где условия прописаны криво или не полностью.
Но при этом все работает
@@whyyyyyyyyyyyyyyyyyyyyyyyyyyry пока что работает
Ну щас, братан, хорош, всегда бы так. Максимально бесят твои видосы с бомбежкой по поводу каких-то технологий, не нравится - не пиши. Вот такого формата видосы я бы смотрел, где ты в веселой форме объясняешь полезные вещи. Лайк не жалко
Братан, хорош! Я никаким боком абсолютно не отношусь к программистам, но посмотреть было интересно. Классы-методы, прям коммунизм какой-то. Пирамиды древние. Хочу ещё такого посмотреть.
После того, как я познакомился с тестами, мой уровень программирования сначала достиг 80-го, а затем и вовсе улетел в стратосферу
Чекер уровней протестируй, уровень не должен улетать. Опять с коллизией накосячил.
Тесты - это то о чем все говорят, но никто не делает 😅
За 10 лет в android разработке ко мне ни разу так и не попал проект, на котором было бы хоть какое-то адекватное покрытие тестами. Может в других областях с этим по лучше?)
Братан, братан, хорош! Давай почаще такого контента!
Збс, обожаю ваши видосы 😎
3:50 Юнит - это, так сказать, единица компилирования. Юниттесты нужны не для проверки и не для отлова багов; юниттесты должны отловить 0 багов. Юниттесты нужны для изолированной разработки единицы компилирования; то есть юниттест позволяет полнофункционально юзать крохотный кусочек программы, как будто у вас есть полностью доделанная вся остальная программа, но у вас нет ни куска всей остальной программы. Юниттесты избавят вас от засирания принтами рабочего кода.
при чем тут компилирование? у тебя юнит тест тестирует отдельные dll или сервисы?
в принципе мысль о том, что юнит тесты уменьшают связанность компонентов верная, но это не едиственный их эффект, и слабой связанности можно добиться и без тестов
@@_pwd
В компилируемых языках это называется единица компиляции. Я тут этот термину потребил к тому, что в компилируемых языках используется то же слово "единица" и оно чётко показывает что есть такое эта единица. Единица на английском языке называется unit. В петоне это примитивный модуль с классом или тематической коллекцией функций. Юнит-тесты тестируют ни длл и ни сервисы, они тестируют 1 модуль. Бытует мнение, что "единица" это якобы функция, но это глупости, ибо не возможно загрузить функцию без остального модуля, особенно если в модуле есть вспомогательные функции, которые не явно используются в тестируемой, а если сегодня не используются, то завтра код поменяется и они будут использоваться.
Юнит-тесты конечно вынуждают уменьшать связанность, но смысл не в этом. Смысл в том, что юнит-тест - это переиспользование минимального куска кода с максимальным задействованием его функционала. Без юнит-тестов проверяющий код пихают в другие места программы в виде принтов, а потом эти принты коментят и даже удаляют навсегда. При этом получается, что модуль зависит от наличия других модулей и от их степени завершённости, а в компилируемых языках ещё и можно выйти "покурить". По этому главное преимущество и цель юнит-тестов в том, что они делают из 1 модуля самостоятельную программу, не нуждающуюся в остальных разрабатываемых модулях. При этом можно напичкивать эту программу проверяющими принтами с ассертами, которые потом не нужно будет удалять из рабочего кода. Ты можешь в такой тестовой маленькой программе сразу проверить все 15 вариантов входящих данных, которые твоя реальная программа будет способна тебе предоставить лишь через пару месяцев разработки. При чём наличие ошибок в этих примерах входящих данных не зависит от правильности работы внешних модулей. Если ты в 1 рыло пилишь собственный проект, то можешь начать совершенно с любого места. Можешь взять какой-нибудь придуманный тобой класс и в юнит-тесте сделать его с нуля до окончательного соответствия твоей задумке, при полном отсутствии остальной программы. В этом главный душеспасительный смысл юнит-тестов - в независимой разработке отдельного модуля; юнит-тесты не ловят баги и не снижают связанность.
Братан, хорош! Давай-давай! Вперёд! Контент в кайф! Можно ещё? Вообще красавчик)
Хорошечно! Спасибо 👍
Братан хорош! Давай давай вперёд !
Контент в кайф. Вообще красавчик
Братан хорош! Давай-давай вперёд! Контент в кайф! Можно ещё! Вообще красавчик! Можно вот этого вот почаще!!!
Братан, братан, контент хорош, можно вот этого ещё почаще!!!
Спасибо за контент)
Братан хорош давай давай вперёд! Контент в кайф. Можно ещё? Вообще красавчик!
Братан, отлично, давай вот побольше этого
Братан, хорош, давай давай, вперёд. Можно ещё, вообще красавчик. Можно вот этого вот почаще
Братан хорош! Давай вперёд! Контент в кайф! Можно ещё? Вообще красавчик!
братан, контент в кайф)
Братан хорош!!! Давай, давай вперёд!!! Контент в кайф. Можно ещё? Вообще красавчик!
Господи, какой же годный видос!
Красавчик, спасибо
Братан вперёд давай давай. Хз что там дальше. Красавчик!!!
Братан хорош. Давай, давай вперёд. Контент в кайф. Можно ещё? Вообще красавчик. Можно вот этого вот почаще.
Братан, ты топ! Твори добро!
Братан хорош. Давай давай, вперед! Контент в кайф. Можно еще? Вообще красавчик...!!!
Братан хорош, давай давай вперед, контент в кайф! Можно ещё? Вообще красавчик
Братан, хорош, давай вперед, можно ещё? Вообще красавчик! Можно вот этого вот почаще?
Братан, хорош, давай-давай вперёд, можно ещё! Вообще красавчик! Можно вот этого вот почаще?
Братан, хорош, давай, давай, вперёд! Контент в кайф, можно ещё? Вообще красавчик! Можно вот этого вот почаще?
ваще кайф, контент красавчик
Братан, хорош, давай давай вперед контент в кайф. Вообще красавчик!! Можно вот это вот по чаще ?
Жжёшь Колян, жги ещё, прям вообще лучший реальный техноблогер всея руси. Юмор агонь!
Давай, братан, давай почаще!
Вот это поворот. Раньше здесь над тестами ржали, а теперь вдруг заднюю включили.
братан, хорош, контент в кайф
Крутой ролик, полезный!