Тёмный

Тесты. Что нужно знать разработчику 

defer panic
Подписаться 5 тыс.
Просмотров 4,9 тыс.
50% 1

Разбираемся, что такое автотесты и зачем их писать.
❤️ Реквизиты, если у вас есть желание поддержать меня и развитие канала:
Boosty - dfrp.cc/boosty
Patreon - dfrp.cc/patreon
Donation Alerts - donationalerts.com/r/deferpanic
ETH - tomakado.eth
TON - tomakado.ton
BTC - 19xwFstmVQsVYqZP64iMVg1StLNSah6Smo
Как написать сокращатель ссылок: • Cокращатель ссылок на ...
Ссылки по теме ролика и другие полезности вы найдете здесь:
Telegram: dfrp.cc/telegram
Discord: dfrp.cc/discord
00:00 - Вступление
00:17 - Зачем писать тесты?
02:10 - Принципы F.I.R.S.T.
05:10 - Пирамида тестирования
06:10 - Как писать тесты на Go
08:53 - Иерархия тестов
10:37 - Табличные тесты
12:23 - Property Based Testing
14:02 - Тесты на код с внешними зависимостями
18:35 - TDD (Test Driven Development)
23:40 - Тестовое покрытие
26:46 - Финал
#go #golang #тестирование #программирование #tdd

Опубликовано:

 

9 июн 2024

Поделиться:

Ссылка:

Скачать:

Готовим ссылку...

Добавить в:

Мой плейлист
Посмотреть позже
Комментарии : 21   
@deferpanic
@deferpanic Год назад
🔗Полезные ссылки по тестированию: - medium.com/@tasdikrahman/f-i-r-s-t-principles-of-testing-1a497acda8d6 - martinfowler.com/bliki/GivenWhenThen.html - go.dev/blog/cover - medium.com/@matryer/meet-moq-easily-mock-interfaces-in-go-476444187d10#.uy9qkloty - go.dev/blog/cover 🔬Исследования про TDD: - About the Return on Investment of Test-Driven Development: www.researchgate.net/publication/2849597_About_the_Return_on_Investment_of_Test-Driven_Development - Evaluating the Efficacy of Test-Driven Development: Industrial Case Studies: www.academia.edu/10500578/Evaluating_the_Efficacy_of_Test_Driven_Development_Industrial_Case_Studies - An Experimental Evaluation of the Effectiveness and Efficiency of the Test Driven Development: www.researchgate.net/publication/4279059_An_Experimental_Evaluation_of_the_Effectiveness_and_Efficiency_of_the_Test_Driven_Development - Factors limiting industrial adoption of test driven development: A systematic review: www.academia.edu/2162533/Factors_limiting_industrial_adoption_of_test_driven_development_A_systematic_review ❤Поддержать defer panic или подписаться на другие соцсети: - Boosty: dfrp.cc/boosty - Patreon: dfrp.cc/patreon - Donation Alerts: donationalerts.com/r/deferpanic - Telegram: dfrp.cc/telegram - Discord: dfrp.cc/discord
@storm-kd4op
@storm-kd4op 28 дней назад
вы здорово объясняете. спасибо
@MartinXProject
@MartinXProject 2 месяца назад
Спасибо за очень качественный контент
@user-pj3kx1td1z
@user-pj3kx1td1z Год назад
Очень хорошее видео, спасибо) Просим ещё)
@nikolay_tuzov
@nikolay_tuzov Год назад
Хороший видос =) Пара мелких технических советов, из того что сразу бросилось в глаза: - Попробуй добавить de-esser, будет приятней слушать - Переходы прям очень долгие, их хочется промотать. А когда что-то хочется промотать, это плохо. Я у себя вообще решил не делать переходы - просто показываю текст пару секунд, немного блюрю фон за ним, но голос на фоне при этом не убираю
@deferpanic
@deferpanic Год назад
Спасибо!
@deferpanic
@deferpanic Год назад
De-esser, кстати, есть, я его не докрутил видимо
@nikolay_tuzov
@nikolay_tuzov Год назад
@@deferpanic Либо плагин/фильтр не очень качественный. Советую попробовать iZotope RX 10 - они дорогие, но там есть триал. Если брать по скидкам, то своих денег точно стоят
@user-iy7rm7dt8x
@user-iy7rm7dt8x 8 месяцев назад
Хорошее видео. Жду ещё! Лайк поставил. Побольше бы об интеграционном и нагрузочном тестировании.
@lefesinio
@lefesinio Год назад
Спасибо за обзорный контент по тестам! Было бы супер, если бы в будущем прикладывали ссылки на ресурсы, библиотеки и исследования на которые вы ссылались, чтобы почитать про них подробнее
@deferpanic
@deferpanic Год назад
Спасибо! Добавил ссылок в запиненный коммент
@goroutine
@goroutine Год назад
Очень полезное видео! Большое спасибо!
@delay_gryaz_chisto
@delay_gryaz_chisto Год назад
очень годно. спасибо!
@waffleboot
@waffleboot 8 месяцев назад
1) по поводу expected = a + b вместо expected = 5 и "сложно генерировать тестовые данные автоматически". Я против сложной логики в тестах, генерации чего-либо в тесте - в тесте должны быть литералы и константы по максимуму. Иначе на ревью приходится разбираться не только в бизнес-логике, но и втыкать в магию что в тесте происходит. Генерация тестовых данных может содержать ошибку и чтобы пройти неправильный тест иногда корежат функцию, подгоняя под кривой тест. Тесты _могут_ содержать ошибку, ее можно не заметить, чем меньше в тесте логики - тем лучше. 2) Если БД внутренняя (managed окружение), то тестировать с ней. Я видел моки с поведением, которого нет у БД и на этом писали логику которая рассыпается с реальной БД. 3) Для табличных тестов map[string]struct{...}, имя для t.Run берем из ключа + рандомизация. 4) Предпочитаю чтобы внутрянка не торчала в тестах потому что тест на внутренную функцию напишут, а функция и не вызывается. 5) Если функция возвращает error и это проверяется, то проверяют иногда только факт ошибки, а не саму ошибку.
@theruziev
@theruziev Год назад
По поводу название пакета с _test иногда хочется протестировать не публичные методы тогда это не сработает, если есть как сделать по другому то буду рад узнать
@deferpanic
@deferpanic Год назад
Я обычно стараюсь писать код так, чтобы непубличные методы хорошо покрывались тестами на публичные. Т.е. если публичные методы представляют ценность сами по себе, то непубличные скорее являются способом декомпозиции публичных
@weirdtiger_private
@weirdtiger_private Год назад
Картинка вах!
@evgen_sr
@evgen_sr Год назад
жаль что скрыл старые видео, теперь у меня фобия смотреть этот канал, приходится выкачивать каждый выпуск, вдруг удалишь
@deferpanic
@deferpanic Год назад
Напиши плиз, какие видео у тебя не показываются? Я проверю, а то я не скрывал старые видео.
@evgen_sr
@evgen_sr Год назад
@@deferpanic watch?v=zKkILTC3wT0 у меня в закладках было написано - Каналы (Channels), Конструкция Select
@deferpanic
@deferpanic Год назад
По идее вот правильный URL: ru-vid.com/video/%D0%B2%D0%B8%D0%B4%D0%B5%D0%BE-mvUiw9ilqn8.html
Далее
Cuộc đua tại Premier League mùa này kiểu:
00:20