Возможно, вы этого не сделаете. Или вам нужно быть счастливым.
То, что я говорю это: природа из PowerMock (ITO) является изменений ваших байт-кода. Другими словами: ваши модульные тесты (потенциально) не, выполняющие файлы классов, скомпилированные javac/вашей IDE. Чтобы сделать свою черную магию, PowerMock будет изменяет ваше содержимое файла класса при загрузке.
И, к сожалению, инструменты для покрытия кода работают одинаково - они должны обладать инструментом содержимым файла классов для выполнения своих частей.
Таким образом, вы не должны удивляться, когда использование PowerMock приводит к «нулевому охвату». Иногда это работает, иногда это не работает. И очень плохая часть: у вас, вероятно, будет очень много времени, чтобы найти решение этой проблемы. сложно. Для этого существуют различные ошибки, например one; и, как сказано: иногда это работает, иногда это не так. Очень многое зависит от того, что вы делаете; и какие рамки вы используете.
Итак, существенный неответ - обратите внимание на необходимость использования PowerMock. Понимаете, есть вероятность, что вы просто написали непроверяемый/труднодоступный производственный код. И теперь вы думаете, что вам нужен большой молот PowerMock, чтобы исправить эту проблему в вашем коде. Вместо этого: узнайте, как создать testable код, например, наблюдая за этими videos. А затем переструктурируйте свой производственный код и избавьтесь от PowerMock. Я сделал это много месяцев назад; и я никогда не сожалел о том, что сделал это. Теперь я полагаюсь на EasyMock/Mokito ... и покрытие кода просто работает для меня.