Я использую Powermock, но когда я запускаю покрытие Eclemma, тестовые случаи Powermock не учитываются в окончательной оценке из-за известных проблем с EclEmma.
Обходной путь для этого, который я ищу, и другие ответы на stackoverflow предлагают иметь:
@Rule
public PowerMockRule rule = new PowerMockRule();
static {
PowerMockAgent.initializeIfNeeded();
}
Затем добавьте банки, такие как powermock-module-javaagent, powermock-module-junit4-rule-agent.
После этого, когда я запускаю свой код, затем обнаруживаю ошибку:
java.lang.VerifyError: Expecting a stackmap frame at branch target 7
Для этого в ответах предлагается иметь javassit различных версий. Но я не могу получить эту работу и получаю ту же ошибку.
Мой pom.xml выглядит так:
<dependency>
<groupId>org.powermock</groupId>
<artifactId>powermock-api-mockito</artifactId>
<version>1.6.1</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.powermock</groupId>
<artifactId>powermock-module-junit4</artifactId>
<version>1.6.1</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.powermock</groupId>
<artifactId>powermock-module-javaagent</artifactId>
<version>1.6.2</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.powermock</groupId>
<artifactId>powermock-module-junit4-rule-agent</artifactId>
<version>1.6.2</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.javassist</groupId>
<artifactId>javassist</artifactId>
<version>3.21.0-GA</version>
<scope>test</scope>
</dependency>
Как я могу включить тестовые примеры PowerMock в окончательную оценку Eclemma?