TGViewer
YDC — Pizza Powered iOS YDC — Pizza Powered iOS @youngdacode · 242 subscribers
Post #38 184
☺️🧪 Code Coverage — чтобы тесты реально помогали

Мы уже говорили про метрики в этом посте, сегодня коснулся очередных доработок в проекте, поэтому захотелось детальнее поговорить про coverage.
Не просто о бейдже в Xcode или на CI, а о построении процесса вокруг метрики, чтобы иметь возможность следить за динамикой качества и принимать решения на основе данных.

Почему это важно:
Покрытие тестами показывает, какие части кода реально проверены — и считать его стоит, не только для всего проекта, но и для отдельных модулей.
Главная ценность — наблюдать, как метрика меняется со временем: где команда теряет фокус, где техдолг копится и где тесты реально спасают.

Инструменты:
🖥 xctestplan — позволяют централизованно управлять конфигурациями и включать сбор покрытия без десятков схем.
🧑‍💻 xcrun xcov — базовый CLI-инструмент Apple для выгрузки покрытия (можно парсить .xccovreport и агрегировать по модулям).
👃 Slather — визуализирует отчёты via html, позволяет собрать cobertura.xml и интегрировать его с CI (для визуализации покрытия в том числе на MR-ах).

Как развивать подход:
- Формировать зоны по которым считается покрытие.
- Хранить и визуализировать динамику покрытия (Grafana / VictoriaMetrics / Prometheus).
- Следить за покрытием в MR — не допускать падения ниже порога.
- Разделять покрытие по фичам и модулям.
- Комбинировать метрики покрытия и сложности кода для приоритезации тестирования.

ИМХО: Coverage — это не про гонку за «100%»,
а про осознанный контроль качества и постоянную обратную связь для команды.

#L #metrics #coverage #xctestplan

👏
Telegram YDC — Pizza Powered iOS 🤔 🧭 Метрики — компас зрелого проекта Наткнулся на статью от Bitrise, где описываются базовые метрики мобильного CI/CD: время сборки, стабильность пайплайнов, покрытие тестами и прочие технические сигналы. И это напомнило простую, но часто забываемую вещь:…
  • ❤ 3
  • 👍 1
More from @youngdacode
  1. Mar 10, 2026😄 Статья CoordinatorKit 2.0: Production-Ready SwiftUI Navigation это пример честного разб…
  2. Mar 4, 2026☝️ 🚀 Как MCP-аналитика помогает AI-агентам кодирования принимать более «осознанные» решен…
  3. Feb 16, 2026☝️ В прошлом посте мы говорили про клиент-серверное взаимодействие: API, REST, запрос-отве…
  4. Feb 15, 2026☝️ 📦 Размер приложения — это не просто цифра в App Store Размер приложения напрямую влияе…
  5. Feb 13, 2026😏 Разберём разницу между some View и AnyView в SwiftUI. Тема не новая, но споры о правиль…
  6. Feb 9, 2026Вечернее-занимательное чтение. Пишет iOS разработчик с опытом, обзор на пост от iOS разраб…
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 →