[ERROR] Errors: [ERROR] BusinessRepositoryTest>AbstractRepositoryTest.setUp:23 » NoClassDefFound Could... [ERROR] BusinessRepositoryTest>AbstractRepositoryTest.setUp:23 » ExceptionInInitializer [ERROR] BusinessUserRepositoryTest>AbstractRepositoryTest.setUp:23 » NoClassDefFound C... [ERROR] BusinessUserRepositoryTest>AbstractRepositoryTest.setUp:23 » NoClassDefFound C... [ERROR] TransactionRepositoryTest>AbstractRepositoryTest.setUp:23 » NoClassDefFound Co... [ERROR] TransactionRepositoryTest>AbstractRepositoryTest.setUp:23 » NoClassDefFound Co... [ERROR] TransactionRepositoryTest>AbstractRepositoryTest.setUp:23 » NoClassDefFound Co... [ERROR] BusinessCustomerLinkServiceTest>AbstractRepositoryTest.setUp:23 » NoClassDefFound [ERROR] BusinessServiceTest.save:30 » NullPointer [INFO] [ERROR] Tests run: 9, Failures: 0, Errors: 9, Skipped: 0
The contents of AbstractRepositoryTest is nothing but a Mockup of a public static method
@BeforeEach void setUp() throws Exception { new MockUp<CafamilyUtils>() { @mockit.Mock public String getLoggedInUserID() { return "system"; } }; }
The version of jmockit is too old (1.24) in pom.xml. It needs to be upgraded to a much newer version (1.47). Besides JMockit also requires the
-javaagent
JVM initialization parameter to be used, according tohttps://jmockit.github.io/tutorial/Introduction.html#runningTests
<dependencies> <dependency> <groupId>org.jmockit</groupId> <artifactId>jmockit</artifactId> <version>${jmockit.version}</version> <scope>test</scope> </dependency> </dependencies>
<plugins> <plugin> <artifactId>maven-surefire-plugin</artifactId> <version>2.22.2</version> <!-- or some other version --> <configuration> <argLine> -javaagent:${settings.localRepository}/org/jmockit/jmockit/${jmockit.version}/jmockit-${jmockit.version}.jar </argLine> </configuration> </plugin> </plugins>