单元测试中的对象交互测试与模拟对象使用
1. 单元测试扩展工具介绍
在单元测试领域,有一些实用的扩展工具可以帮助我们更好地进行测试。
- JUnitPerf :它是 JUnit 的一个扩展,允许通过多个线程重复运行测试,以此来测试代码的性能和并发能力。更多信息可查看 JUnitPerf 官网 。
- Cactus :这是一个工具包,可用于在远程服务器(如应用服务器或 Servlet 引擎)上运行单元测试。详情可访问 Cactus 官网 。
2. 传统状态测试的问题
在典型的 JUnit 测试中,通常是设置一些数据传递给被测试代码,然后验证返回值,这种方式主要是测试数据或状态。然而,在构建实际应用时,这种状态测试存在一些缺点:
- 过多依赖 :一个单元测试本应只测试一小段代码,但有时测试的类会依赖多个其他类,形成很长的依赖链。这会导致大量的设置工作和高执行成本,一个方法可能需要实例化许多对象,包括外部资源(如文件或数据库连接)。而且,如果一个类的行为发生变化,可能会影响所有依赖它的类的测试,导致测试维护困难。
- 过度暴露 :面向对象编程的一个重要优点是对象通过接口封装数据和行为。但在测试时,为了验证与某
超级会员免费看
订阅专栏 解锁全文

被折叠的 条评论
为什么被折叠?



