Кодовое покрытие — это не просто процент в отчёте Когда речь идёт об отдельном приложении, собрать Code Coverage относительно просто: инструментировать код, запустить тесты, собрать данные и построить отчёт. А что происходит, если тестировать нужно целую операционную систему? В ОСРВ «Нейтрино» компоненты поставляются в виде отдельных пакетов, а количество компонентов и тестов исчисляется тысячами. При этом разные подсистемы проверяются разными типами тестирования — от unit-тестов до интеграционных и верификационных. Иван Расстегаев в статье на Хабре разобрал, как организован сбор кодового покрытия в такой системе: 👍 как собираются buildtime- и runtime-артефакты; 👍 зачем нужны отдельные верификационные сборки ОС; 👍 как собирать данные о покрытии непосредственно на целевых устройствах; 👍 почему нельзя просто объединить результаты всех тестовых конвейеров; 👍 как формируется единый отчёт по пакетам и различным составам дистрибутива; 👍 как эта задача решается средствами CI/CD. Если вам приходилось строить CI/CD для больших систем, где десятки или сотни тестовых наборов должны в итоге дать одну достоверную картину покрытия кода, статья будет особенно интересна. 👉 Читать статью на Хабре #Нейтрино