junit---用mock object进行隔离测试(下)

mock objects的使用范围
     实际的对象有不确定的行为。
     实际对象很难建立
     实际对象有很难才能产生的行为(比如一个网络错误)
     实际对象很迟钝。
     实际对象有一个或者是一个UI
总结:
   这一章描述了一个叫mock objects的技术,他可以让我们从其他域对象或者环境中隔离出来进行单元测试。当写一个好的单元测试的时候,最大的障碍就是把自己从执行环境中抽象出来。我们经常听到这样的抱怨”我没有测试这个方法就是因为我很难模拟真实环境“。hoho,现在可能不会了。
   在大多数情况下,写mock-object 测试有个好的副作用:他迫使你来重写一些代码。实际上,代码常常写的不好。你让类和环境之间产生了不必要的耦合。由于mock objects,你必须和以前不一样的思考并且应用更好的设计模式,比如接口和控制反转(IOC)
     MOCK OBJECTS应该不仅仅当成一个单元测试技术而且当成一种设计技术。方法论中一个冉冉升起的新星叫做“Test-Driven”,他的支持者先写测试后写代码。有了TDD,你不需要重构你的代码来适应测试:代码已经在测试之中。
   尽管写mock objects很容易,然而当你需要模拟成千上万的对象的时候他能变得烦人,在以下的章节里,我们将要展现许多开源的框架,这些框架能够为你的类自动产生ready-to-use mocks,使得采用mock-objects策略变得十分愉快。
   在以下的章节中,将会介绍Cactus,随后是一些j2ee的测试案例,包括servlet,filter,jsp,taglibs,database和ejb.
阅读更多
个人分类: JAVA
想对作者说点什么? 我来说一句

没有更多推荐了,返回首页

加入CSDN,享受更精准的内容推荐,与500万程序员共同成长!
关闭
关闭