Похоже, вы выбираете неинструментированные классы.
Возможно, потому что classpath
в вашей задаче junit
имеет скомпилированные классы (build/classes
) впереди инструментальных (build/instrumented
). Может быть, поменять их в этом classpath?
EDIT
Я скачал emma и настроил базовый проект с одним исходным классом и одним тестовым классом. Я попытался запустить его, используя сборку, представленную в вопросе. Единственное изменение, которое я сделал, заключалось в том, чтобы обернуть тело в <project>
с test
в качестве цели по умолчанию. При запуске я получил похожее сообщение в вопросе:
[report] processing input file [/Users/mjc/stack_overflow/emma/build/metadata.emma] ...
[report] loaded 1 metadata entries
[report] 1 file(s) read and merged in 6 ms
[report] nothing to do: no runtime coverage data found in any of the data files
Затем я установил путь к классу junit, чтобы поставить инструментальные классы впереди ванили:
<classpath>
<pathelement location="build/test" />
<pathelement location="build/instrumented" />
<pathelement location="build/classes" />
<pathelement location="lib/junit.jar" />
<pathelement location="lib/emma.jar" />
<pathelement location="lib/emma_ant.jar" />
</classpath>
и реран:
[report] processing input file [/Users/mjc/stack_overflow/emma/build/coverage.emma] ...
[report] loaded 1 coverage data entries
[report] processing input file [/Users/mjc/stack_overflow/emma/build/metadata.emma] ...
[report] loaded 1 metadata entries
[report] 2 file(s) read and merged in 4 ms
[report] merged metadata contains 1 entries
[report] merged coverage data contains 1 entries
[report] writing [html] report to [/Users/mjc/stack_overflow/emma/reports/coverage.html] ...
[report] report: processing package [default package] ...
Похоже, это исправило это для меня. У меня был один тест, который побежал:
[junit] Running SoTest
[junit] Testsuite: SoTest
[junit] Tests run: 1, Failures: 0, Errors: 0, Time elapsed: 0.081 sec
[junit] Tests run: 1, Failures: 0, Errors: 0, Time elapsed: 0.081 sec
[junit]
[junit] ------------- Standard Output ---------------
[junit] EMMA: collecting runtime coverage data ...
[junit] ------------- ---------------- ---------------
Если вы не видите таких строк в выводе ant, возможно, у вас нет тестов, соответствующих шаблону **/TetrisSuite.java
?