2008-10-16 5 views
2

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

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

Я могу запускать мои тесты (jmockit.jar и coverage.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)

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

ответ

2

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

1

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

+0

Любая идея, как я могу узнать, какой классpath использует и отличается ли она? – Epaga 2008-10-16 13:25:27

Смежные вопросы