`
anreddy
  • 浏览: 98094 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类
最新评论

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.
分享到:
评论

相关推荐

    junit-4.13.2-API文档-中文版.zip

    赠送jar包:junit-4.13.2.jar; 赠送原API文档:junit-4.13.2-javadoc.jar; 赠送源代码:junit-4.13.2-sources.jar; 赠送Maven依赖信息文件:junit-4.13.2.pom; 包含翻译后的API文档:junit-4.13.2-javadoc-API...

    junit-jupiter-api-5.7.2-API文档-中文版.zip

    赠送jar包:junit-jupiter-api-5.7.2.jar; 赠送原API文档:junit-jupiter-api-5.7.2-javadoc.jar; 赠送源代码:junit-jupiter-api-5.7.2-sources.jar; 赠送Maven依赖信息文件:junit-jupiter-api-5.7.2.pom; ...

    junit-jupiter-api-5.8.2-API文档-中文版.zip

    赠送jar包:junit-jupiter-api-5.8.2.jar; 赠送原API文档:junit-jupiter-api-5.8.2-javadoc.jar; 赠送源代码:junit-jupiter-api-5.8.2-sources.jar; 赠送Maven依赖信息文件:junit-jupiter-api-5.8.2.pom; ...

    junit-jupiter-api-5.4.2-API文档-中英对照版.zip

    赠送jar包:junit-jupiter-api-5.4.2.jar; 赠送原API文档:junit-jupiter-api-5.4.2-javadoc.jar; 赠送源代码:junit-jupiter-api-5.4.2-sources.jar; 赠送Maven依赖信息文件:junit-jupiter-api-5.4.2.pom; ...

    junit-jupiter-5.5.1.rar

    JUnit5相关的 JUnit Jupiter.jar依赖包,主要包含: junit-jupiter-5.5.1.jar,junit-jupiter-api-5.5.1.jar,junit-jupiter-engine-5.5.1.jar,junit-jupiter-params-5.5.1.jar,junit-jupiter-api-5.4.2.jar,...

    junit-jupiter-engine-5.8.2-API文档-中文版.zip

    赠送jar包:junit-jupiter-engine-5.8.2.jar; 赠送原API文档:junit-jupiter-engine-5.8.2-javadoc.jar; 赠送源代码:junit-jupiter-engine-5.8.2-sources.jar; 赠送Maven依赖信息文件:junit-jupiter-engine-...

    junit-4.12-API文档-中文版.zip

    赠送jar包:junit-4.12.jar; 赠送原API文档:junit-4.12-javadoc.jar; 赠送源代码:junit-4.12-sources.jar; 包含翻译后的API文档:junit-4.12-javadoc-API文档-中文(简体)版.zip 对应Maven信息:groupId:...

    junit-platform-launcher-1.8.0-M1-API文档-中文版.zip

    赠送jar包:junit-platform-launcher-1.8.0-M1.jar; 赠送原API文档:junit-platform-launcher-1.8.0-M1-javadoc.jar; 赠送源代码:junit-platform-launcher-1.8.0-M1-sources.jar; 赠送Maven依赖信息文件:junit-...

    junit-jupiter-params-5.7.2-API文档-中文版.zip

    赠送jar包:junit-jupiter-params-5.7.2.jar; 赠送原API文档:junit-jupiter-params-5.7.2-javadoc.jar; 赠送源代码:junit-jupiter-params-5.7.2-sources.jar; 赠送Maven依赖信息文件:junit-jupiter-params-...

    junit-platform-launcher-1.7.0.jar

    junit-platform-launcher-1.7.0.jarjunit-platform-launcher-1.7.0.jar

    junit-jupiter-api-5.5.2-API文档-中文版.zip

    赠送jar包:junit-jupiter-api-5.5.2.jar; 赠送原API文档:junit-jupiter-api-5.5.2-javadoc.jar; 赠送源代码:junit-jupiter-api-5.5.2-sources.jar; 赠送Maven依赖信息文件:junit-jupiter-api-5.5.2.pom; ...

    junit-platform-launcher-1.8.0-M1-API文档-中英对照版.zip

    赠送jar包:junit-platform-launcher-1.8.0-M1.jar; 赠送原API文档:junit-platform-launcher-1.8.0-M1-javadoc.jar; 赠送源代码:junit-platform-launcher-1.8.0-M1-sources.jar; 赠送Maven依赖信息文件:junit-...

    junit-platform-commons-1.8.2-API文档-中英对照版.zip

    赠送jar包:junit-platform-commons-1.8.2.jar; 赠送原API文档:junit-platform-commons-1.8.2-javadoc.jar; 赠送源代码:junit-platform-commons-1.8.2-sources.jar; 赠送Maven依赖信息文件:junit-platform-...

    junit-4.12.jar下载

    junit4 jar包下载,内包含junit-4.12.jar、junit-4.11.jar、junit-4.8.2.jar、junit-4.7.jar

    junit-platform-launcher-1.6.2.jar

    junit-platform-launcher-1.6.2.jarjunit-platform-launcher-1.6.2.jarjunit-platform-launcher-1.6.2.jar

    junit-jupiter-api-5.8.0-M1-API文档-中英对照版.zip

    赠送jar包:junit-jupiter-api-5.8.0-M1.jar; 赠送原API文档:junit-jupiter-api-5.8.0-M1-javadoc.jar; 赠送源代码:junit-jupiter-api-5.8.0-M1-sources.jar; 赠送Maven依赖信息文件:junit-jupiter-api-5.8.0-...

    junit-jupiter-engine-5.4.2-API文档-中文版.zip

    赠送jar包:junit-jupiter-engine-5.4.2.jar; 赠送原API文档:junit-jupiter-engine-5.4.2-javadoc.jar; 赠送源代码:junit-jupiter-engine-5.4.2-sources.jar; 赠送Maven依赖信息文件:junit-jupiter-engine-...

    junit-platform-launcher-1.6.1-API文档-中文版.zip

    赠送jar包:junit-platform-launcher-1.6.1.jar; 赠送原API文档:junit-platform-launcher-1.6.1-javadoc.jar; 赠送源代码:junit-platform-launcher-1.6.1-sources.jar; 赠送Maven依赖信息文件:junit-platform-...

    junit-vintage-engine-5.5.2-API文档-中文版.zip

    赠送jar包:junit-vintage-engine-5.5.2.jar; 赠送原API文档:junit-vintage-engine-5.5.2-javadoc.jar; 赠送源代码:junit-vintage-engine-5.5.2-sources.jar; 赠送Maven依赖信息文件:junit-vintage-engine-...

    junit-jupiter-params-5.5.2-API文档-中文版.zip

    赠送jar包:junit-jupiter-params-5.5.2.jar; 赠送原API文档:junit-jupiter-params-5.5.2-javadoc.jar; 赠送源代码:junit-jupiter-params-5.5.2-sources.jar; 赠送Maven依赖信息文件:junit-jupiter-params-...

Global site tag (gtag.js) - Google Analytics