TGViewer
C# 1001 notes C# 1001 notes @csharp_1001_notes · 6.64K subscribers
Post #843 2.46K
🚨 «Нет времени на тесты» уже не работает

В 2026 писать тесты стало проще, чем придумывать оправдания
ИИ генерит шаблоны, дописывает кейсы и закрывает рутину

Если у тебя есть нормальная структура, всё остальное ускоряется в разы

Вот минимальный стек, который покрывает почти всё

• Для юнитов
• xUnit остаётся стандартом
• TUnit можно смотреть как более современную альтернативу

Для ассёртов
• Shouldly даёт максимально читаемые проверки
• FluentAssertions теперь платный, это стоит учитывать

Для интеграционных тестов
Aspire сильно упрощает жизнь
WebApplicationFactory плюс TestContainers дают реальные зависимости в тестах
Respawn чистит базу между прогонами

Для фронта
• Playwright сейчас лучший выбор
• Selenium уже больше про легаси

Для моков
• NSubstitute самый чистый по API
• Moq как дефолт, если привык

Для данных
Bogus и AutoFixture закрывают генерацию тестовых сценариев

Для перфома нса
• BenchmarkDtNet для микро-бенчей
• k6 для нагрузки
• NBomber если хочешь остаться в C#

Что по факту важно

Тебе не нужен весь этот стек сразу
Достаточно двигаться по порядку

• Сначала юнит-тесты
• Потом интеграция
• Потом нагрузка
• Потом E2E

Самый частый фейл не в инструментах
А в том, что тесты откладывают «на потом»

В 2026 это уже странное решение

Гайд по интеграционным тестам в Aspire
https://antondevtips.com/blog/dotnet-aspire-integration-testing-best-practices-for-distributed-applications?utm_source=twitter&utm_medium=social&utm_campaign=09-04-2026
More from @csharp_1001_notes
  1. Sep 20, 2026🧩 C# Channels: сообщение попало в очередь. Почему обработчик его не получил? Два воркера…
  2. Sep 16, 2026Эта задача проверяет понимание Memory<T>, pooling, ownership, IAsyncEnumerable, cancellati…
  3. Sep 16, 2026# C# 14: хитрая задача на ArrayPool, IAsyncEnumerable и время жизни памяти Есть поток данн…
  4. Sep 14, 2026# C# 14: конкурентный кеш без race condition Реализуйте потокобезопасный кеш: public seale…
  5. Sep 14, 2026🔍Тестовое собеседование с Senior C# разработчиком уже завтра 15 сентября(уже завтра!) в 1…
  6. Sep 11, 2026🔧 Как передать многострочный PEM через Aspire в ASP.NET Core Сертификаты и ключи в PEM со…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →