Mock 对象何时使用?

Colin Mackay讲述mock的论文 中列出了一些常见的使用mock的场景:
  • 真实对象有着不确定的行为
  • 真实对象很难创建
  • 真实对象的行为很难触发
  • 真实对象响应缓慢
  • 真实对象是用户界面
  • 真实对象使用了回调机制
  • 真实对象尚未存在
K Scott AllenMocks - It's A Question Of When 认为,即使是上面列表中的内容也稍显肤浅,从更深刻、更普遍的意义而言,应该是”在你想把被测试的代码分离的时候,martin fowlertest doubles[mocks]就显出了作用。“简而言之,按照Allen的观点,用了mock对象,业务组件的测试代码就可以不依赖其它组件了;试举一例来看,A依赖于B,但A的单元测试只会因为A的问题而出现问题,跟B的状态无干。

"Mock Roles, Not Objects" 的作者们写到,mock技术:
"……在基于对象角色构建的系统中,可以识别出各种角色类型……尤其是,我们已经知道了Mock Object可以为我们带来的最大好处——曾被称为接口识别的概念"。



posted on 2008-06-12 10:39  Easy Company  阅读(607)  评论(0编辑  收藏  举报

导航