论坛首页 Java企业应用论坛

程序员为什么不写单元测试

浏览 73452 次
该帖已经被评为良好帖
作者 正文
   发表时间:2007-07-07  
对TDD来说,我自己已经开始习惯了这种编码方式,编码前写一个TODO-List,然后写TestCase,接着才有代码,再重构,最后有了代码。这样写相对于传统的编码来说,免去了一大堆Debug的时间,不然写完一堆代码,然后手动一测试,一堆Bug和非预期行为,接着就是无穷无尽的折磨人的debug时间来了。
0 请登录后投票
   发表时间:2007-07-07  
chenk85 写道
对TDD来说,我自己已经开始习惯了这种编码方式,编码前写一个TODO-List,然后写TestCase,接着才有代码,再重构,最后有了代码。这样写相对于传统的编码来说,免去了一大堆Debug的时间,不然写完一堆代码,然后手动一测试,一堆Bug和非预期行为,接着就是无穷无尽的折磨人的debug时间来了。


继续遇到了一个志同道合者了。
0 请登录后投票
   发表时间:2007-07-07  
klyuan 写道
chenk85 写道
对TDD来说,我自己已经开始习惯了这种编码方式,编码前写一个TODO-List,然后写TestCase,接着才有代码,再重构,最后有了代码。这样写相对于传统的编码来说,免去了一大堆Debug的时间,不然写完一堆代码,然后手动一测试,一堆Bug和非预期行为,接着就是无穷无尽的折磨人的debug时间来了。


继续遇到了一个志同道合者了。


我只是一个推崇XP方法的学生而已。遇到JUnit之后发现编码体验变的和之前完全不同故有所感悟而已。
0 请登录后投票
   发表时间:2007-07-07  
chenk85 写道
klyuan 写道
chenk85 写道
对TDD来说,我自己已经开始习惯了这种编码方式,编码前写一个TODO-List,然后写TestCase,接着才有代码,再重构,最后有了代码。这样写相对于传统的编码来说,免去了一大堆Debug的时间,不然写完一堆代码,然后手动一测试,一堆Bug和非预期行为,接着就是无穷无尽的折磨人的debug时间来了。


继续遇到了一个志同道合者了。


我只是一个推崇XP方法的学生而已。遇到JUnit之后发现编码体验变的和之前完全不同故有所感悟而已。


是的,说真的,有时候我在项目开发中也会偷懒,但是我一样到我不想在集成时那么痛苦和自己的责任感。我就主动的去写单元测试了。
0 请登录后投票
   发表时间:2007-07-08  
cfly 写道
不会写单元测试的人比会写的人要便宜


一语中的啊
0 请登录后投票
   发表时间:2007-07-08  
为什么hibernate这些东西出来以前 大家不用orm 道理差不多
0 请登录后投票
   发表时间:2007-07-09  
joachimz 写道
少一点Why,大道理说服不了多少人。多说一点How,多给一些实际的例子!

例如,我这里很多程序依赖几十个DAO,而且很多DAO中实际是包含很多业务逻辑的。请问这个单元测试如何做?很多Service中只是逐一调用这些DAO(transaction script),对Service的单元测试的意义有多大?

例如这是一个DAO的sql语句(ibatis)


dao里包含很多业务逻辑?这本身就有问题吧……你这个问题反而说明了TDD的必要性。
0 请登录后投票
   发表时间:2007-07-09  
javaTo 写道
稍微复杂点的逻辑可能会写个测试,说是测试,其实就是加个main方法,而且这个main方法最后还可能被无情的删除。

如果说测试是一种责任,那么我不得不说一下我们公司,注释啊,同志们!
公司的底层数据库操作是自己的框架,再加一层service,那个注释写的,跟没写一样,看起来真叫累,所以现在我写代码注释都打的非常详细。

如果说不写测试是不负责任,那么不写注释的同志们就该拉出去痛打一顿!


听说过“将代码转为注释”吗?太多的注释和没有注释一样糟糕,最好让你的代码清晰明了,自释其义--这需要不断的重构你的代码,而重构需要单元测试做保障,所以……
0 请登录后投票
   发表时间:2007-07-09  
测试的环境很难做。
比如和数据库相关的测试。由于有多张关联表,要模拟这个数据环境很麻烦。也许比业务逻辑的代码还要多。
0 请登录后投票
   发表时间:2007-07-09  
wutao8818 写道
测试的环境很难做。
比如和数据库相关的测试。由于有多张关联表,要模拟这个数据环境很麻烦。也许比业务逻辑的代码还要多。


这个我会专题来讲
0 请登录后投票
论坛首页 Java企业应用版

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