Я пытаюсь протестировать API JavaMail и использовать SpringRunner и PowerMockRunner, но это не удается.
@RunWith(PowerMockRunner.class)
@PowerMockRunnerDelegate(SpringRunner.class)
@PowerMockIgnore(value = {"javax.management.*"})
@SpringBootTest
public class BaseITest {
@PrepareForTest(value = {MyStaticHelper.class})
@Test
public void testListFolders() {
// mock static method
// Use JavaMail API
}
}
Я получаю это исключение:
javax.mail.MessagingException: java.security.NoSuchAlgorithmException: class configured for SSLContext: sun.security.ssl.SSLContextImpl$DefaultSSLContext not a SSLContext
Если я удалю @PowerMockIgnore(value = {"javax.management.*"}), я получаю это исключение:
Caused by: java.lang.LinkageError: loader constraint violation: loader (instance of org/powermock/core/classloader/MockClassLoader) previously initiated loading for a different type with name "javax/management/MBeanServer"
Используемые версии зависимостей:
- powermock-api-mockito: 1.7.1
- powermock-модуль-junit4: 1.7.1
- мокито-все: 2.0.2-бета
- мокито-ядро: 2.8.9
Кто-нибудь может помочь?