AdoptOpenJDK 启动质量保证计划

阅读数:806 2019 年 10 月 21 日 08:00

AdoptOpenJDK启动质量保证计划

AdoptOpenJDK 公开发布了一个测试套件,旨在确保每个 AdoptOpenJDK 版本的功能正确性、性能和整体效率。

AdoptOpenJDK Quality Assurance (AQA)的目标是让发布的版本更符合企业客户的期望,为希望不付出额外成本就可以保持 Java 最新的组织提供一致的体验。虽然 Java 是免费的,但从 Java 11 开始,Oracle JRE 成了需要商业许可才能使用的商业产品。为了避开这些变更的用户已经转向其他 JRE,比如 AdoptOpenJDK,或者公共 GPL 构建版——这两个都是免费的。

AdoptOpenJDK 是基于完整版 OpenJDK 源代码构建的,而这个新的质量保证计划提供了比 Java Compatibility Kit(JCK)更全面的验证。除了基本的一致性测试之外,它还提供了性能、安全性和可伸缩性方面的细节。例如,在 4 月份, Docker 提供的 Java 版本在功能上虽然是兼容的,但没有包含一系列安全补丁,导致它容易被攻击。

AQA 的第一次迭代提供了 30,000 多个测试,其中大多数都可以在开发人员的笔记本上运行。一些“特殊”测试(比如多字节字符集)被排除在外,因为它们需要特殊的硬件。这些测试旨在鼓励 OpenJDK 开发人员在提交代码之前先运行测试,而不是让持续集成服务器运行测试。那些特殊测试的目的是为了找出与特殊配置或硬件有关的问题,比如导致 2008 年在土耳其发生的谋杀 / 自杀事件的字符编码问题

AQA 还提供了一系列性能测试,以确保每个版本都能保持良好的性能。与旨在比较不同 Java 版本性能的 SpecJBB Renaissance 不同,AQA 测试是自引用的,旨在防止版本出现回归,比如变慢或消耗额外的资源。 AQA Jenkins 测试套件已经可以运行成功,需要 15 分钟或更少的时间。测试套件包括了自定义基准测试,以及来自流行的开源项目(如 Kafka 和 Jerry)的性能测试。扩展测试覆盖范围是为了防止 JDK 在其他项目中速度可能会下降,尽管在运行自己的测试时可能很快。

大多数 Java 用户不会直接与 AQA 发生交互,不过下载使用 AdoptOpenJDK 二进制文件的用户会更容易感受到这种影响。

原文链接

AdoptOpenJDK Introduces Quality Assurance Program

评论

发布