NoClassDefFoundError при попытке использовать JMockit Coverage - PullRequest
2 голосов
/ 16 октября 2008

Я пытаюсь использовать возможности покрытия кода JMockit. Использование параметра JVM

-javaagent:jmockit.jar=coverage=.*MyClass.java:html::

Я могу запустить свои тесты (jmockit.jar и cover.jar находятся на пути к классам), к сожалению, мой файл журнала говорит:

Loaded external tool: mockit.coverage.CodeCoverage=.*MyClass.java:html::
Loaded external tool: mockit.integration.junit3.JUnitTestCaseDecorator
Loaded external tool: mockit.integration.junit4.JUnit4ClassRunnerDecorator
Exception in thread "Thread-0" java.lang.NoClassDefFoundError
    at mockit.coverage.CodeCoverage$OutputFileGenerator.run(CodeCoverage.java:56)

... и файл покрытия не создается. Кто-нибудь заставил JMockit Coverage работать? Если да, то есть мысли о том, что вызывает эту ошибку? Спасибо ...

Ответ : Мне нужно было добавить покрытие к записям начальной загрузки, а не только к записям пользователя (в конфигурации запуска Eclipse)

Фактический ответ Фактический ответ заключается в том, что я проводил тест с JUnit 3, но для покрытия требуется JUnit 4. Это исправило ошибки, и мне не нужно было добавлять записи начальной загрузки.

Ответы [ 2 ]

2 голосов
/ 17 октября 2008

Я проводил тест с JUnit 3, но для покрытия требуется JUnit 4. Это исправило ошибки, и мне не нужно было добавлять записи начальной загрузки.

1 голос
/ 16 октября 2008

Случайное предположение ... Является ли cover.jar в пути к классам, который использует jmockit - может быть, он другой?

...