Abh*_*mar 6 java jakarta-mail powermock powermockito spring-boot-test
我正在尝试测试JavaMail api并使用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
}
}
Run Code Online (Sandbox Code Playgroud)
我得到这个例外:
javax.mail.MessagingException: java.security.NoSuchAlgorithmException: class configured for SSLContext: sun.security.ssl.SSLContextImpl$DefaultSSLContext not a SSLContext
Run Code Online (Sandbox Code Playgroud)
如果我删除@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"
Run Code Online (Sandbox Code Playgroud)
使用的依赖版本是:
有人可以帮忙吗?
它看起来像一个错误。
对我的案例有帮助的解决方案是缩小加载的配置范围。
尝试指定要加载的最小配置集:
@SpringBootTest(classes = SomeSpesificConfiguration.class)
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
869 次 |
| 最近记录: |