仍然是“单元测试还是集成测试”,“什么时候用mock object”,这个老话题。对这个东西的理解见仁见智,不必求同。
首先,单元测试是设计技术,不是测试结束,是写在接口定义好,代码实现前的,在这个前提下讨论。

在设计的过程中,有些东西是实的,有些东西是虚的,参见下图

UI---JSP也好,swing也罢
DB---mysql,oracle,包括dal,dao层
框架---spring,hivemind,或其他种种

以上这些只是些许例子。这些东西是实的。
在你的设计空间里,你所有的构思、你的想象、你的设想,那是虚的(无贬义)。

这样就简单了,实的实测,虚的虚测。
UI的测试就直接跑起来去操作,数据库、DAO测试,用DBUNIT或者操作完了去看数据库(不必强求自动化)。 spring用它自己的AbstractDependencyInjectionSpringContextTests去测测看组件装配的对不对。

虚的用mock object,可用的库也不少,easymock真的很easy,测试单个接口很方便。   mock是“伪”的意思,正好跟“虚”配一对。

在理清概念、设计出接口后,实际实现前,用一堆mock的实现去跑一跑看行不行的通,是不是有什么潜在的问题等,非常有帮助,这是模拟执行的概念了。

对实的东西进行实的测试,使整个应用建筑在坚固的地基上,对虚的东西进行虚的测试,放飞思想的翅膀,在落地前,你可以有充分的自由改变轨迹、追求完美。

  • 6317cd20-c722-4d6d-a505-e3e086fbd286-thumb
  • 描述:
  • 大小: 57.2 KB
评论
发表评论

提醒: 该博客已发表在公共论坛,博客所有留言会成为论坛回贴,留言请注意遵守论坛发贴规则

您还没有登录,请登录后发表评论

诺铁
搜索本博客
最近加入圈子
存档
最新评论
  • 换个角度看SOA
    SOA!!!现在我这个项目就是利用IBM的SOA,感觉开发效率的确很高啊!!!对 ...
    -- by gysh
  • 换个角度看SOA
    [quote="pioneer21th"][quote="triu"] Co ...
    -- by insky
  • 换个角度看SOA
    不是很同意吧 或者这样说,合适一点 SOA不是给技术人员来看的 而是给管理者和 ...
    -- by wl95421
  • 换个角度看SOA
    我认为如果SOA要被大家接受,至少SAAS也要能被大家接受,但是目前看来,SAA ...
    -- by gates_lee
  • 换个角度看SOA
    abcx 写道购买SOA的基础设施的成本不会低吧,IBM整了那么多庞大的软件出来 ...
    -- by hongsoft