如何编写受JDK错误影响的Java单元测试

时间:2015-12-08 14:19:49

标签: java unit-testing java-8 java-7

我最近发现我的一个单元测试由于JDK中的错误而失败,即JDK-8080774

编写条件单元测试的最佳方法是什么 - 它针对存在错误修复的JDK版本以及缺少错误修复时的不同方式检查输出的一种方式?

对于JDK bug 8080774 - 它在JDK 6或更早版本中根本没有修复,它在JDK版本7u91或更高版本以及JDK版本8u60或更高版本中修复

我已经考虑过分析System.getProperty("java.version")的输出,但如果可能的话,我正在寻找更好/更优雅的解决方案。

例如Apache CommonsSystemUtils.isJavaVersionAtLeast()方法,但它没有足够的粒度。

1 个答案:

答案 0 :(得分:1)

编辑 - 在问题清楚地提及此

之前发布

正如Brian指出的那样,你需要尽可能多地获得最新的稳定版JDK。

但是,您可以通过在运行时获取java.version属性来获取VM版本。

有关详细信息,请参阅此post