编写keystore.load(InputStream,password)的测试用例

时间:2019-11-29 13:04:57

标签: java junit mockito keystore powermockito

我一直在尝试为SSLContextCongif.java类编写一个测试用例。我一直在为其中的一个代码段编写以下测试用例:

KeyStore ks = KeyStore.getInstance("JKS");

ks.load(new FileInputStream(trustStore), password);

TrustManagerFactory trustManagerFactory = 
TrustManagerFactory.getInstance("PKIX");
trustManagerFactory.init(ks);

我为此编写的测试部分:

keystore=PowerMockito.mock(KeyStore.class);
trustManagerFactory =mock(TrustManagerFactory.class); 

String keys="mockedkeys";     

keystore = KeyStore.getInstance("JKS");
keystore.load(File(keys), password);

trustManagerFactory= TrustManagerFactory.getInstance("PKIX");
trustManagerFactory.init(keystore);

但这是问题所在,测试用例在ks.load()处引发异常。在设置SSL上下文期间发生了异常。 {}

1 个答案:

答案 0 :(得分:0)

我无法找到模拟keystore.load()函数的方法。因此,我通过了虚拟密钥库文件及其相应的密码。像魅力一样工作。