我正在评估 JUnit 的设计。
导入的 JUnit 有 2 个重要部分:v3.x 的代码(向后兼容的原因)和 v4.x 的代码。
v3.x 有一个非常清晰的设计,我已经确定了多种模式和良好的 OO 实践(模板方法模式、复合、适配器等)。
然而,v4.x 被证明要困难得多。经过一些分析,我无法真正找到其中的不同模式。然而,我确实找到了这个引用:“JUnit 3 到 JUnit 4 的演变浮现在脑海中。JUnit 3 是一个小型框架,它使用了多种模式,如 Composite、Template Method 和 Command。JUnit 4 利用了 J2SE 中引入的 Annotations 元编程工具5.0. 模式的使用消失了,框架演变成一小组注解加上一个执行注解 Java 代码的测试运行器基础设施。”
来自http://www.informit.com/articles/article.aspx?p=1404056
所以,我在这里有点束缚。我不确定如何分析 v4.x。是没有明确设计的底线吗?这是一堆乱七八糟的代码?还是我错过了什么,背后有什么设计?