Я использую Jenkins и Buckminster для приложения rcp для CI, и это работает как шарм. Единственная проблема, с которой я столкнулся, заключается в том, что задача buckminster emma выполняет покрытие кода для ВСЕХ пакетов в извлеченной рабочей области. Я хотел бы указать фильтр исключения, поскольку это описано для задачи муравья, но не заработало. Команда buckminster emma help мне тоже не помогла. У меня есть несколько плагинов в моей рабочей области, модульные тесты указаны для моих собственных пакетов. Но есть один плагин, включающий исходные файлы, которые я не хочу учитывать в emma для покрытия кода, так как это внешний пакет. Мои тесты JUnit также не охватывают этот пакет.
Как мне добиться этого, чтобы исключить этот пакет/классы в одном плагине?
Пример:
- плагин А (внешний)
- плагин B (собственный)
- плагин C (содержащий модульные тесты)
Команды, которые я использую, следующие:
importtargetdefinition -A '${WORKSPACE}/de.plugin.site/plugin.target'
import '${WORKSPACE}/de.plugin.site/site.cquery'
build
perform -D target.os=* -D target.ws=* -D target.arch=* de.plugin.site#site.p2
perform -D target.os=win32 -D target.ws=win32 -D target.arch=x86 de.plugin.site#create.product.zip
emma -l '/de.plugin.test/AllBuckminsterTests.launch' -o '${WORKSPACE}output/junit_result.xml' --xml '${WORKSPACE}/output/coverage_report.xml' --flatXML
`
Я попробовал параметр --define 'filter=-de.external.*'
, указанный в справке бакминстера emma, но безуспешно.
Любая помощь будет здорово!