Большинство, если не все инструменты покрытия кода, должны работать с OSGi. Их общая стратегия заключается в постобработке байт-кода для добавления дополнительного кода, который позволяет им измерять такое покрытие. Самая большая проблема, которая возникает, заключается в том, что этот код теперь обычно зависит от дополнительного кода (библиотеки покрытия кода). Такие зависимости могут быть либо явными (путем добавления операторов Import-Package), как и с любой другой зависимостью.
Другой вариант, который у вас есть, - это добавить библиотеку покрытия кода в путь загрузки, чтобы вам не требовался этот дополнительный импорт (который нарушает модульность, обычно это не то, что вам нужно, но в этом случае не имеет значения). Как только вы решите эту проблему, все остальное - это выбор правильных комплектов и агрегирование результатов нескольких различных тестовых прогонов.