Как отключить инструментарий покрытия jmockit

#java #code-coverage #jacoco #maven-surefire-plugin #jmockit

#java #покрытие кода #jacoco #maven-верный плагин #jmockit

Вопрос:

У меня есть проект maven, где jmockit 1.18 используется для редактирования, surefire для запуска наборов тестов и jacoco для измерения покрытия кода.

Когда я пытаюсь обновить jmockit до версии 1.45, он выдает ошибку при инициализации виртуальной машины test suite runner. Однако тесты выполняются, когда javaagent явно передается как параметр argline.

Может кто-нибудь сказать мне, есть ли способ отключить инструментарий jmockit или инициализацию агента?

Комментарии:

1. Если -javaagent:.../jmockit.jar параметр инициализации JVM не используется, то JMockit ничего не делает. И даже если указанный параметр используется , он все равно не активирует инструментарий покрытия кода, только API-интерфейсы mocking amp; faking.

Ответ №1:

В примечаниях к выпуску JMockit явно указано

Версия 1.42 (26 августа 2018):
JMockit теперь требует использования параметра инициализации JVM «-javaagent».


В главе о выполнении тестов с помощью JMockit говорится

Для запуска тестов, использующих любой из JMockit API

Настройте JVM для выполнения теста, чтобы он начинался с «-javaagent:/jmockit.1.x.jar «параметр.


Это означает, что вы вынуждены использовать этот параметр запуска виртуальной машины.
По крайней мере, если вы хотите продолжать использовать JMockit.