Как рассчитать покрытие при использовании Robolectric

Я использую make for building и Robolectric в качестве основы для запуска тестов на Android. Я хотел бы рассчитать охват моего приложения. Для контрольных испытаний я использовал emmalib . Каков наилучший способ настроить расчёт покрытия в этом случае? Я не могу мигрировать к градиенту или maven.

Вы связаны с Эммой? Как насчет использования покрытия RoboElectric + Cobertura ? (Я думаю, вы могли бы использовать CLI для вышеупомянутой комбинации)

Итак, варианты

1.) RoboElectric + Cobertura – только CLI, вероятно, для кого-то не на ANT

2.) JaCoCo может иметь некоторые полезные параметры

3.) Чистое тестирование Android + Emma / EclEmma

Полезные ссылки для отслеживания

Генерирование покрытия кода Android, хотя изменения в файлах build.xml и ant.properties

Охват кода Gradle для Android

https://intellectualcramps.wordpress.com/2013/08/18/code-coverage-of-robolectric-tests-using-jacoco/

https://bitbucket.org/ravidsrk/androidstarter

РЕДАКТИРОВАТЬ:

Ну, большинство учебных пособий, с которыми я столкнулся, используют ant, к сожалению, и я не думаю, что было бы плохой идеей для вас перейти к рекомендуемой системе сборки, такой как Gradle, чтобы она открывала множество опций. Но для JaCoCo вы можете посмотреть здесь: https://intellectualcramps.wordpress.com/2013/08/18/code-coverage-of-robolectric-tests-using-jacoco/

ОБНОВИТЬ:

Перемещено это из комментариев в раздел ответов для информации всем, кто хочет это увидеть, и потому что это вопрос о щедрости

Одним из решений было бы использование Cobertura для генерации покрытия кода, которое может быть интегрировано в eclipse, а также запускаться скриптом сборки ant.

Шаблонный проект такой интеграции можно найти здесь: https://github.com/adgllorente/android-cobertura-boilerplate

Обратите внимание, что вся магия происходит в файле build.xml проекта Test. Тезисы задач, вероятно, должны быть обобщены на файл custom_rules.xml поэтому вы можете использовать android для обновления своих проектов.

Наконец, для Gradle у вас много разных опций:

Обратите внимание, что вы всегда можете использовать Gradle в качестве вторичной системы сборки, чтобы генерировать отчеты о покрытии. (Но вторая система сборки введет много накладных расходов)

Jacoco иногда не работает с Robelectric и powermock runner, вы можете использовать клевер в инструментах atlassian, теперь это инструмент с открытым исходным кодом.