DotNet & More DotNet & More
-
- Technology
Подкаст о .Net технологиях и не только.
YouTube: https://www.youtube.com/playlist?list=PLbxr_aGL4q3R6kfpa7Q8biS11T56cNMf5
Обсуждайте:
Telegram: https://t.me/dotnetmore_chat
Следите за новостями:
Twitter: https://twitter.com/dotnetmore
Telegram channel: https://t.me/dotnetmore
-
DotNet&More #116: Рефакторить тесты и код, или только тесты ... и не только
Вы решились отрефакторить тесты, но как? - Следовать принципу "Сложные тесты результат сложного кода" и переделать код?
- Неинвазивно поменять только тесты?
Что же выбрать?
Спасибо всем кто нас слушает. Ждем Ваши комментарии.
Бесплатный открытый курс "Rust для DotNet разработчиков": https://www.youtube.com/playlist?list=PLbxr_aGL4q3S2iE00WFPNTzKAARURZW1Z
Shownotes:
00:00:00 Вступление
00:11:55 Сколько тестов надо писать?
00:21:00 Меняем и тесты, и тестируемый код
00:46:45 Рефакторим только тесты
Ссылки:
- https://github.com/dotnetmore/shit-tests : Проект с "плохими" тестам
Видео: https://youtube.com/live/j_eWBt8vLa4
Слушайте все выпуски: https://dotnetmore.mave.digital
YouTube: https://www.youtube.com/playlist?list=PLbxr_aGL4q3R6kfpa7Q8biS11T56cNMf5
Обсуждайте:
- Telegram: https://t.me/dotnetmore_chat
Следите за новостями:
– Twitter: https://twitter.com/dotnetmore
– Telegram channel: https://t.me/dotnetmore
Copyright: https://creativecommons.org/licenses/by-sa/4.0/ -
DotNet&More #115: Рефакторим тесты, тестовые фреймворки и не только
Присоединяйтесь к брейншторму "как улучшить тесты", добавляйте свой Pull Request в https://github.com/dotnetmore/shit-tests
Тесты должны быть понятные, говорили они. Тесты должны быть короткие, учили они. Но что делать, если только arrange занимает 20 строк? А если act - больше чем просто вызов метода? А если логика кода достаточно сложная, так что в однострочный assert не влезает?
Спасибо всем кто нас слушает. Ждем Ваши комментарии.
Бесплатный открытый курс "Rust для DotNet разработчиков": https://www.youtube.com/playlist?list=PLbxr_aGL4q3S2iE00WFPNTzKAARURZW1Z
Shownotes:
00:00:00 Вступление
00:02:30 DRY в тестах
00:13:15 Как рефакторить и код, и тесты одновременно
00:20:30 А что если делать маленькие классы и маленькие тесты?
Ссылки:
- https://github.com/dotnetmore/shit-tests : Тесты, которые мы разбирали в выпуске
- https://fluentassertions.com/introduction : Fluent Assertions
- https://nsubstitute.github.io/ : NSubstitute
- https://www.testrail.com/blog/5-bdd-tools-c-codebases/ : Обзор BDD фреймворков
- https://github.com/VerifyTests/Verify/ : Verify для сложного assert
- https://github.com/VerifyTests/Verify.Serilog : Verify для логов 0_o
Видео: https://youtube.com/live/dPH6W7yMJPw
Слушайте все выпуски: https://dotnetmore.mave.digital
YouTube: https://www.youtube.com/playlist?list=PLbxr_aGL4q3R6kfpa7Q8biS11T56cNMf5
Обсуждайте:
- Telegram: https://t.me/dotnetmore_chat
Следите за новостями:
– Twitter: https://twitter.com/dotnetmore
– Telegram channel: https://t.me/dotnetmore
Copyright: https://creativecommons.org/licenses/by-sa/4.0/ -
DotNet&More #114: Как писать "чистые" тесты и не только
На читаемость тестов мало кто обращает внимание, а зря - тут много проблем и неочевидных решений.
Спасибо всем кто нас слушает. Ждем Ваши комментарии.
Бесплатный открытый курс "Rust для DotNet разработчиков": https://www.youtube.com/playlist?list=PLbxr_aGL4q3S2iE00WFPNTzKAARURZW1Z
Shownotes:
00:00:00 Вступление
00:04:00 Сферический тест в вакууме
00:13:20 Какими кейсами жертвовать?
00:15:00 Нейминг
00:24:40 Вычисления в тесте
00:30:00 Ссылка на тикет в тесте
00:47:10 Ненужный Verify
Ссылки:
- https://dev.to/thawkin3/clean-code-with-unit-tests-tips-and-tricks-for-keeping-your-test-suites-clean-483l : Неплохая статья, но много капитанства
- https://en.wikipedia.org/wiki/Behavior-driven_development : BDD
Видео: https://youtube.com/live/Ztfahr3_Mi0
Слушайте все выпуски: https://dotnetmore.mave.digital
YouTube: https://www.youtube.com/playlist?list=PLbxr_aGL4q3R6kfpa7Q8biS11T56cNMf5
Обсуждайте:
- Telegram: https://t.me/dotnetmore_chat
Следите за новостями:
– Twitter: https://twitter.com/dotnetmore
– Telegram channel: https://t.me/dotnetmore
Background music: http://freemusicarchive.org/music/Six_Umbrellas/Ad_Astra
Copyright: https://creativecommons.org/licenses/by-sa/4.0/ -
DotNet&More #113: Тестирование тестов, code coverage, mutation testing и не только
Тесты мы написали, но что дальше? Как проверить что мы покрыли все возможные кейсы? А может некоторые тесты вообще бесполезны? Для этого есть несколько инструментов.
Спасибо всем кто нас слушает. Ждем Ваши комментарии.
Бесплатный открытый курс "Rust для DotNet разработчиков": https://www.youtube.com/playlist?list=PLbxr_aGL4q3S2iE00WFPNTzKAARURZW1Z
Shownotes:
00:00:00 Вступление
00:02:20 Критерии качества тестов
00:13:00 Проверка функциональности тестов
00:21:00 Line Code Coverage
00:31:10 Branch Code Coverage
00:47:30 ExcludeFromCodeCoverageAttribute, как правильно использовать
00:55:40 Mutation Testing, "работает" ли в .Net?
Ссылки:
- https://github.com/coverlet-coverage/coverlet : Coverlet
- https://github.com/danielpalme/ReportGenerator : Report Generator
- https://stryker-mutator.io/ : Stryker Mutator
Видео: https://youtube.com/live/6EAzwRJMIg8
Слушайте все выпуски: https://dotnetmore.mave.digital
YouTube: https://www.youtube.com/playlist?list=PLbxr_aGL4q3R6kfpa7Q8biS11T56cNMf5
Обсуждайте:
- Telegram: https://t.me/dotnetmore_chat
Следите за новостями:
– Twitter: https://twitter.com/dotnetmore
– Telegram channel: https://t.me/dotnetmore
Background music: http://freemusicarchive.org/music/Six_Umbrellas/Ad_Astra
Copyright: https://creativecommons.org/licenses/by-sa/4.0/ -
DotNet&More #112: Как заставить ChatGPT сгенерировать нормальные тесты и не только
В прошлом выпуске генерация тестов нас разочаровала, но нам потом объяснили: мы все делали не правильно. В этом раз исправляемся.
Спасибо всем кто нас слушает. Ждем Ваши комментарии.
Бесплатный открытый курс "Rust для DotNet разработчиков": https://www.youtube.com/playlist?list=PLbxr_aGL4q3S2iE00WFPNTzKAARURZW1Z
Shownotes:
00:00:00 Вступление
00:02:50 Как правильно состовлять промпт, советы эксперта
00:25:20 Как создать свой GPT?
00:29:00 Практика Copilot
01:06:15 Практика AI Assitant
Ссылки:
- https://github.com/rodion-m/awesome_ai_for_programmers : Awesome AI for Programmers
- https://t.me/probelov_net : Канал Родиона про AI и не только
- https://youtu.be/pm1V1FtQ33Y : Доклад: Выжимаем максимум из ChatGPT для программистов
- https://chat.openai.com/g/g-Yb0vNIKz6-c-code-test-master : Сетап ChatGPT для генерации тестов
Видео: https://youtube.com/live/l-ffyamBLBw
Слушайте все выпуски: https://dotnetmore.mave.digital
YouTube: https://www.youtube.com/playlist?list=PLbxr_aGL4q3R6kfpa7Q8biS11T56cNMf5
Обсуждайте:
- Telegram: https://t.me/dotnetmore_chat
Следите за новостями:
– Twitter: https://twitter.com/dotnetmore
– Telegram channel: https://t.me/dotnetmore
Background music: http://freemusicarchive.org/music/Six_Umbrellas/Ad_Astra
Copyright: https://creativecommons.org/licenses/by-sa/4.0/ -
DotNet&More #111: Генерация тестов и не только
Многие не любят писать тесты, так почему бы не отдать эту сложную задачу алгоритмам, LLM или чему то еще... Попробуем разные подходы, поэкспериментируем.
Спасибо всем кто нас слушает. Ждем Ваши комментарии.
Бесплатный открытый курс "Rust для DotNet разработчиков": https://www.youtube.com/playlist?list=PLbxr_aGL4q3S2iE00WFPNTzKAARURZW1Z
Shownotes:
00:00:00 Вступление
00:01:00 Виды генераторов
00:07:20 Copilot
00:18:26 Жесть и Copilot
00:42:20 Генерация тестов через Rider AI Assitant
01:00:00 В топку ИИ!
01:06:50 Почему LLM не справились
01:16:00 Генерируем тесты через V#
01:24:00 Резюме
Ссылки:
- https://learn.microsoft.com/en-us/visualstudio/test/intellitest-manual/?view=vs-2022 : Microsoft IntelliTest
- https://www.jetbrains.com/help/rider/Generate_tests.html : Generate tests with AI
- https://github.com/VSharp-team/VSharp : V# Symbolic Execution Engine
- https://plugins.jetbrains.com/plugin/20747-unittestbot-net : UnitTestBot.NET, основанный на V# Symbolic Execution Engine
Видео: https://youtube.com/live/V1zi_N7DfHU
Слушайте все выпуски: https://dotnetmore.mave.digital
YouTube: https://www.youtube.com/playlist?list=PLbxr_aGL4q3R6kfpa7Q8biS11T56cNMf5
Обсуждайте:
- Telegram: https://t.me/dotnetmore_chat
Следите за новостями:
– Twitter: https://twitter.com/dotnetmore
– Telegram channel: https://t.me/dotnetmore
Background music: http://freemusicarchive.org/music/Six_Umbrellas/Ad_Astra
Copyright: https://creativecommons.org/licenses/by-sa/4.0/