我正在使用powermock 1.2.5 来执行一个将数据保存到 Oracle 数据库中的类。当我运行我的测试时,我的单元测试失败并出现以下异常:
NoSuchAlgorithmException : 可以找到 DES 算法。
调试代码后发现,当我的应用程序尝试设置密码以建立数据库连接时,会引发此异常。
我的一些观察是:
- 如果我在没有 power mock 的情况下运行单元测试,则不会发生异常。
- 如果我手动将 sun-jce.jar 文件包含到单元测试引导程序中,我设法运行单元测试。eclipse.sun-jce.jar 是 jre 库文件夹中的 jar 文件之一。我正在使用 SUN java jre 版本 1.5.0_10
所以我猜想在单元测试运行时以某种方式 power mock 卸载这个特定的 jar 文件。有人在使用 powermock 时遇到类似的问题吗?
我目前正在考虑的一种解决方法是在我的单元测试的 setup() 下以编程方式加载 jar 文件。