Jacoco convertendo cobertura.ec para relatórios sem cobertura.em

Consegui obter o relatório de cobertura de código seguindo as etapas abaixo,

Ative a cobertura no tipo de compilação desejado (por exemplo, depuração)

buildTypes { debug { testCoverageEnabled true } }

Aplique o plugin Jacoco e defina a versão

apply plugin: 'jacoco' jacoco { version "0.7.1.201405082137" }

Corre

./gradlew createDebugCoverageReport

Todos os testes no connectedAndroidTest são executados e o relatório de cobertura é gerado com base neles. Eu posso encontrar os relatórios de cobertura em

app/build/outputs/reports/coverage/{buildType}/index.html

e um arquivo de cobertura.ec em

app/build/outputs/code-coverage/connected/coverage.ec

Mas não há jacoco.exec desde que eu estou executando a Instrumentação Android em vez de casos de teste Robolectric.

E quando executo a instrumentação do ADB (acho que ainda está usando Emma) da seguinte maneira, recebo um arquivo de cobertura.ec da seguinte maneira,

$ adb shell am instrument -w -e coverage true -e coverageFile /sdcard/coverage.ec com.sample.helloworld.test/.Runner
....
OK (4 tests)

Generated code coverage data to /sdcard/coverage.ec

Mas não consigo converter o cover.ec para relatar o uso de ema porque o arquivo de cobertura.em está ausente,

java -cp ~/adt-bundle-mac-x86_64-20130729/sdk/tools/lib/emma_device.jar emma report -r html -in \
coverage.em,myFile.ec,myapp_coverage1.ec -sp /path/to/myapp/src

Existe uma maneira de contornar este problema??

questionAnswers(4)

yourAnswerToTheQuestion