Java开发网 |
注册 |
登录 |
帮助 |
搜索 |
排行榜 |
发帖统计
|
您没有登录 |
» Java开发网 » Design Pattern & UML
打印话题 寄给朋友 订阅主题 |
作者 | Re:如何对下面的类进行单元测试? [Re:kuyacai] |
emarket
亢龙有诲 CJSDN高级会员 发贴: 460 积分: 82 |
于 2004-08-28 16:51
如果你只是要测试 HelloWord 的话, 1. 对SystemConfig extract interface 作一个新的interface , SystemConfigInterface. 2. 把 helloworld 的参数改称 SystemConfigInterface , 这样你就可以用 jMock or easy mock , mock 一个 SystemConfigInterface了 但是我真正担心的是 你如何 测试 SystemConfig, 这是一个所谓的 singleton, 不大清楚你的context, 但是至少我知道 在J2EE, 和 distributed app 中 singelton是 不可以依赖的。 另外 Singleton is a evil to TDD 具体的一些讨论http://www.c2.com/cgi/wiki?search=singleton 一些可能的建议 1. 加一个 reset在 singleton 2. 该他的 constructor to pulbic 3. 用 flyweight代替 singleton 不过这些都有些不完美 另外关于singleton的 文章 Use your singletons wisely http://www-106.ibm.com/developerworks/webservices/library/co-single.html 你可以读读 个人Blog http://agilespeaking.blogspot.com/ |
作者 | Re:如何对下面的类进行单元测试? [Re:kuyacai] |
emarket
亢龙有诲 CJSDN高级会员 发贴: 460 积分: 82 |
于 2004-08-31 20:09
对于 systemConfig 这种 singleton, 还有两个办法就是, 用一个专门的jvm去 跑它,每种不同的情况用一个单独的jvm来跑。 ant里面有些参数设置 可以做到 , 有兴趣的可以研究一下。 或者,自己写一个 class loader, 在不同的test中 用不同的classloader。 不过 这些方法都是 有点出力不讨好了。 轻易的放过某个class不是一个好的办法,好的办法就是去 refactoring, 只有 unit test 达到了 100% 的 cover, refactoring才是安全的,否则你将永远生活在"change"的恐惧中。 另外还要注意让 QC多写些 functional test! 个人Blog http://agilespeaking.blogspot.com/ |
已读帖子 新的帖子 被删除的帖子 |
Powered by Jute Powerful Forum® Version Jute 1.5.6 Ent Copyright © 2002-2021 Cjsdn Team. All Righits Reserved. 闽ICP备05005120号-1 客服电话 18559299278 客服信箱 714923@qq.com 客服QQ 714923 |