Покрытие кода Emma для библиотеки на Android

В настоящее время у меня есть несколько модульных тестов для приложения Android, которое вызывает файлы jar библиотеки. Я хотел бы увидеть покрытие кода для jar, но когда я запускаю ant emma и просматриваю покрытие.html, он сообщает только о покрытии проекта приложения.

Есть ли способ указать, что я хотел бы также просмотреть покрытие для банки?


person nicobatu    schedule 23.02.2012    source источник
comment
ты заставил его работать? Я все еще получаю только приложение, а не библиотеку. Я добавил test.project.lib.source.path в ant.properties и указал на мою папку libary/src.   -  person Akshat    schedule 11.11.2012


Ответы (2)


ADT r20-preview решает эту проблему, предоставляя доступ к полному пути к классам протестированных проектов и их библиотечных проектов:

http://tools.android.com/download/adt-20-preview

Исправления в Ant:

  • Тестовые проекты теперь имеют доступ к полному пути к классам из протестированных проектов, включая библиотечные проекты и сторонние jar-файлы.
  • Приложения, в которые встроены тесты, теперь можно развертывать и тестировать, в том числе с охватом кода, как и тестовые приложения.

Это даст вам отчеты о покрытии кода в ваших библиотечных проектах, но вам придется внести некоторые изменения в test цель build.xml, чтобы также прикрепить исходные файлы. См. Приложение исходного кода проекта библиотеки Android к отчету Emma (ant, emma) для получения дополнительной информации о том, как на данный момент внедрить покрытие emma test для ваших библиотечных проектов.

person Grantland Chew    schedule 29.05.2012
comment
Эй, я только что проверил этот учебник, и у меня есть вопрос. Этот путь под: # Это может быть список каталогов, разделенных точкой с запятой, test.android.library.source.dir=../library/src;etc. Что автор имеет в виду под /library/src/etc? - person NioShobu; 21.08.2012
comment
@NioShobu Это разделенный точкой с запятой список исходных каталогов проекта вашей библиотеки. - person Grantland Chew; 25.08.2012

В документации Emma упоминаются инструментальные банки ( http://emma.sourceforge.net/ ), так что это кажется возможным, возможно вам нужно немного поиграть с настройками конфигурации.

Удачи.

person cjstehno    schedule 23.02.2012