Java单元测试技术(7)

本文深入剖析JUnit框架的六个核心包,详细介绍了接口Test、抽象类TestCase与类TestSuite之间的关系,阐述了JUnit框架的设计模式及其实现,旨在帮助开发者更高效地进行单元测试。
3) 框架常见类介绍
JUnit包含6个包(package):junit.awtui、junit.swingui、junit.textui、junit.extensions、junit.framework、junit.runner。其中前三个包中包含了JUnit运行时的入口程序以及运行结果显示界面,它们对于JUnit使用者来说基本是透明的。junit.runner包中包含了支持单元测试运行的一些基础类以及自己的类加载器,它对于JUnit使用者来说是完全透明的。剩下的两个包是和使用JUnit进行单元测试紧密联系在一起的。其中junit.framework包含有编写一般JUnit单元测试类必须要用到的JUnit类;而junit.extensions则是对framework包在功能上的一些必要扩展以及为更多的功能扩展留下的接口。我们常用的还是junit.framework包,所以下面我就将这个包下的类作一介绍。

以上是这个包下的类图,为方便理解,我将Throwable类和Error类也放了进来,注意它们是JDK提供的类,非本包的类。
 接口Test、抽象类TestCase、类TestSuite之间的关系
Test是接口(interface),定义有方法run,TestCase和TestSuite都实现了该接口,前面我们提到TestSuite包含TestCase, TestSuite有一个Vector成员,Vector的元素就是它包含的TestCase,当然也可以是子TestSuite,所以为便于管理,TestSuite只认Test接口,在它看来TestSuite包含的是Test对象,而不用细分为TestCase和子TestSuite。对测试套run方法的调用,相应地就会递归调用它所包含的用例run方法和子测试套run方法。这里使用到了Composite设计模式,另外,从命令调用(run命令)与命令实现分离的角度看又能看到Command设计模式的影子。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值