论坛首页 海阔天空论坛

目前项目的暴强代码风格 + 把它重构了!

浏览 31854 次
精华帖 (0) :: 良好帖 (31) :: 灌水帖 (0) :: 隐藏帖 (0)
作者 正文
   发表时间:2008-12-17  
[url]http://ajoo.iteye.com/blog/197804 [/url]


这篇文章咋看咋有理
0 请登录后投票
   发表时间:2008-12-17   最后修改:2008-12-17
下一站,火星 写道
gigix 写道
下一站,火星 写道
(耸肩加摇头)但是tdd我觉得开发成本太大了,难道你是啥东西都是一上来都写个测试用例?只针对复杂的业务逻辑测试足够了好哇?

是的
你反正要花时间去想自己要做什么
写测试只是把想的过程落实到程序代码,顺便还收获可执行的验证,没有额外的成本,只有额外的收益,何乐而不为
当然很多人写程序之前根本就不想到底要做什么,那就是另一回事了


不知道你有没有考虑过测试用例的正确性这个问题,写测试用例肯定不是不用动脑子的,我见过很多的情况是测试用例根本没有覆盖到需求,所以如果这要写好这个测试用例还是需要花一定的成本的。

所以提到tdd我就脸红 ,我只能说,我做测试了,但不是tdd,ddd我看比较靠谱

反正我就半吊子tdd
pl/sql
shell
等一些东东还是老样子测试,老样子文档,老样子注释
怎么方便怎么搞,符合环境现状。
0 请登录后投票
   发表时间:2008-12-17  
下一站,火星 写道
不知道你有没有考虑过测试用例的正确性这个问题,写测试用例肯定不是不用动脑子的,我见过很多的情况是测试用例根本没有覆盖到需求,所以如果这要写好这个测试用例还是需要花一定的成本的。

我很疑惑
如果你不能写一个测试来描述自己要做什么
那么你真的知道自己要做什么吗?
如果你连自己要做什么都没想清楚
你在节约什么成本?
0 请登录后投票
   发表时间:2008-12-17  
gigix 写道
下一站,火星 写道
不知道你有没有考虑过测试用例的正确性这个问题,写测试用例肯定不是不用动脑子的,我见过很多的情况是测试用例根本没有覆盖到需求,所以如果这要写好这个测试用例还是需要花一定的成本的。

我很疑惑
如果你不能写一个测试来描述自己要做什么
那么你真的知道自己要做什么吗?
如果你连自己要做什么都没想清楚
你在节约什么成本?

需求一定要写成测试?
没这个必然性吧
0 请登录后投票
   发表时间:2008-12-17  
LZ忍了吧.
我这个工作流的程序.中
那个程序把7个不同权限的人,把这些处理过程都放到了
jsp页面中. 不关放了jsp中这个.
还混杂着html 的talbe布局, 和color = "xxx" 这样的东西- _-.
因此.jsp很长很长很长.... if 好多好多好多. html和jsp代码像天上
烂糟糟的星河样夹杂在一起. 想给表格中某个信息加粗找不到地方.
只能把每个可以看到的<td></td>间加入这样 SBBB1 SBBB2 SBB3 ...这样的很显著
的东西.这样想改哪个单元格中的东西时就可以通过他显示的SBBX去代码中找了.
javabean中只是pojo类 .....

也许原作能看懂...
1 请登录后投票
   发表时间:2008-12-17  
jichongchong 写道
需求一定要写成测试?
没这个必然性吧

一定要锻炼身体吗?
一定要保持健康吗?
同样没这个必然性

再说一遍,医生没有义务确保所有人都健康
1 请登录后投票
   发表时间:2008-12-17  
gigix 写道
下一站,火星 写道
不知道你有没有考虑过测试用例的正确性这个问题,写测试用例肯定不是不用动脑子的,我见过很多的情况是测试用例根本没有覆盖到需求,所以如果这要写好这个测试用例还是需要花一定的成本的。

我很疑惑
如果你不能写一个测试来描述自己要做什么
那么你真的知道自己要做什么吗?
如果你连自己要做什么都没想清楚
你在节约什么成本?


确实我很困惑,我的意思是,1+1=2这种半吊子逻辑你也测试一下吗?

我问一个问题,有些需求我肯定是知道做什么的,难道我还傻不垃圾的跑去写个测试用例,然后再拷贝的实现一遍?这不是浪费时间是啥?


0 请登录后投票
   发表时间:2008-12-17   最后修改:2008-12-17
下一站,火星 写道
确实我很困惑,我的意思是,1+1=2这种半吊子逻辑你也测试一下吗?

我问一个问题,有些需求我肯定是知道做什么的,难道我还傻不垃圾的跑去写个测试用例,然后再拷贝的实现一遍?这不是浪费时间是啥?

理论是,如果我明确知道不会出错的代码,我就不会去测它
现实是,我只见过测试不足的,没见过测试过头的
我的实践是,任何超过三行或者两个分支的代码片段都应该被测试
1 请登录后投票
   发表时间:2008-12-17  
gigix 写道
下一站,火星 写道
确实我很困惑,我的意思是,1+1=2这种半吊子逻辑你也测试一下吗?

我问一个问题,有些需求我肯定是知道做什么的,难道我还傻不垃圾的跑去写个测试用例,然后再拷贝的实现一遍?这不是浪费时间是啥?

理论是,如果我明确知道不会出错的代码,我就不会去测它
现实是,我只见过测试不足的,没见过测试过头的
我的实践是,任何超过三行或者两个分支的代码片段都应该被测试


请教一个经验吧,覆盖率到多少才叫基本讲的过去?

我所见过的代码段基本都在3行以上
0 请登录后投票
   发表时间:2008-12-17  
下一站,火星 写道
gigix 写道
我的实践是,任何超过三行或者两个分支的代码片段都应该被测试

请教一个经验吧,覆盖率到多少才叫基本讲的过去?
我所见过的代码段基本都在3行以上

这里的思路是:超过3行或者2个逻辑分支的代码片段就是有可能出错的,因此它应该被测试
所以针对符合此条件的代码,测试覆盖率应该是100%,除非你有绝对充分的理由
如果你是从一个已有代码库开始,那么至少应该保证新写的代码符合此条件的达到100%测试覆盖,并且旧代码的测试覆盖率逐步上升、永不下降
和所有的原则一样,这些原则也是可以妥协的
采用这样严格的原则,只是为了让自己不要妥协得那么容易
1 请登录后投票
论坛首页 海阔天空版

跳转论坛:
Global site tag (gtag.js) - Google Analytics