1
我想涵蓋此try
塊的catch
部分與JUnit。我該怎麼做?如何通過JUnit覆蓋塊捕獲
public class ClientCertSocketFactory implements SecureProtocolSocketFactory {
private static final Logger LOGGER = LoggerFactory.getLogger(ClientCertSocketFactory.class);
private SSLSocketFactory sslSocketFactory;
public ClientCertSocketFactory() throws IOException{
String trustStoreFilePath = System.getProperty("javax.net.ssl.trustStore");
try {
TrustManagerFactory trustManagerFactory = CertManagerFactory.loadTrustStore(trustStoreFilePath);
SSLContext sslContext = SSLContext.getInstance("TLS");
sslContext.init(null, trustManagerFactory.getTrustManagers(), null);
this.sslSocketFactory = sslContext.getSocketFactory();
} catch (NoSuchAlgorithmException e) {
LOGGER.error("No Provider supports a TrustManagerFactorySpi implementation for the TLS protocol. Error message: " + e);
} catch (KeyManagementException e) {
LOGGER.error("Error occurred when initializing SSLContext. Error message: " + e);
}
}
}
使init方法拋出這些不同的錯誤或模擬trustManagerFactory,並使trustManagerFactory.getTrustManagers()拋出這些錯誤。 – StackFlowed 2014-10-06 13:38:19