Junit源码阅读(六)之Junit中的设计模式

2016-02-04
阅读 7 分钟
4.9k
在这次的博客中我们将着重于Junit的许多集成性功能来讨论Junit中的种种设计模式。可以说Junit的实现本身就是GOF设计原则的范例教本,下面就让我们开始吧。

Junit源码阅读(五)

2016-02-04
阅读 11 分钟
3.8k
尽管在第二次博客中我们讲述了Runner的运行机制,但是许多其他特性比如Filter是如何与运行流程结合却并不清楚。这次我们来回顾整理一下Junit的执行流程,给出各种特性生效的机理,并分析一些代码中精妙的地方。

Junit源码阅读(四)之自定义扩展

2016-02-04
阅读 7 分钟
2.8k
上次的博客中我们着重介绍了Junit的Validator机制,这次我们将聚焦到自定义扩展Rule上来。在很多情形下我们需要在测试过程中加入一些自定义的动作,这些就需要对statement进行包装,Junit为此提供了以TestRule接口和RunRules为基础的Rule扩展机制。

Junit源码阅读(三)之精致的Validator

2016-02-03
阅读 6 分钟
2.7k
在建立Runner的过程中,往往需要对当前的测试样例和注解进行验证,比如检查测试类是否含有非静态内部类,测试类是否是Public的。Junit的验证机制非常精致而优美,在本次博客中我们就主要来谈一谈Validator机制的实现。

Junit源码阅读(二)之样例运行的机制

2016-02-03
阅读 12 分钟
4.3k
在上次的博客中我们提到了最终由Runner以Notifier为参数执行测试样例,但并没有解释到底测试方法是如何被运行起来的,一些诸如RunWith、RunAfter之类的特性又到底是如何实现的呢。这次我们就集中深入Runner的运行机制来探究样例是如何被运行的。