这几天把能找到的关于Mock Objects的资料都看了,总算是有了一点了解;
其实也就是把XP、TDD又温习了一遍……
看到这里你一定惊讶,这些需要温习吗!
这些可是每个标榜敏捷、推崇XP的开发者每天必做的事情——只要写代码的话;
就如同DB后擦PP一样,从来无须任何提醒,甚至说是一种本能!
是,是该那样!
只可惜自己以前多是嘴上工夫——而且也只是浅尝则止 -_-!
刚才粗略的浏览了HiMock,EasyMock,jMock的代码,有如下一些看法:
jMock:
明显感觉的到代码中TDD的味道,整个框架中充满了Unit Testing 和Acceptance Test,便于重构和扩展;其次其目录结构(包)组织的很清晰,尤其是测试类的目录结构。
EasyMock:
目录结构组织的很失败,其中MockControl类居然长达1500多行——可怕!
两个项目中都存在的一个问题:
编码规范,不说一定要遵循Sun 的Java编码规范,但起码要求是整个项目中一致的编码规范,让人看上去舒服;当然最好再有一些必要的注释。
记得去年第一次下载JUnit的目的只是想见识一下大师的代码;解压后草草浏览了几个类后,很是失望——没什么注释,编码规范也不一致。总之,至少看上去并不漂亮;所以就放弃了仔细研读打算!虽然现在想来仍有些汗,但这确实是个值得注意的问题!
HiMock:
需要在制定一个漂亮的编码规范之后开始对整个项目进行重构,包括目录结构的重新组织(那些长得别扭的类名问题也会迎刃而解);还有就是完备的测试类,其目录结构是否该借鉴一下jMock呢?用Maven对项目进行管理,这种目录结构又是否可行呢?