已锁定 主题: 程序员为什么不写单元测试
该帖已经被评为良好帖
|
|
---|---|
作者 | 正文 |
发表时间:2007-07-10
不是我不想写,我狠想写啊,这样可以提高自己的水平,但是pm不给我时间写,只好自己加班写娄
|
|
返回顶楼 | |
发表时间:2007-07-10
真的没有想到这篇文章会有这么大的反响!
关于测试的重要性我已经不想再多说,不想再重复什么了啦! 我写这篇文章的目的更像是一个序幕!或一个前言! 为什么有那么多的人不愿意写单元测试,与很多人不会写单元测试有非常大的关系! 后继我想继续深入下去,讨论怎么写单元测试,或者说是怎么使编写单元测试更容易一些! 希望和大家一起探讨! |
|
返回顶楼 | |
发表时间:2007-07-10
我是从05年开始写测试代码的,当时是一个比较小的项目,公司想试一下。等到项目结束时,只有我一个人在坚持。客观的说TDD对程序员OO的水平要求比较高,很多人达不到这个水平,也没有想去努力达到,所以就找些理由放弃了。不过我是先写实现代码的,虽然没有严格按照TDD在做,但也收获不小。不过近期也在考虑,转换一下思路去做,看看有没有别的效果。的确,测试的重要性和必要性就别讨论了,大家还是分享一下自己在测试方面的经验更好。
|
|
返回顶楼 | |
发表时间:2007-07-10
很受振动。
本人是一个新手,开始从事编码工作不到一年,写过不少代码,回想一下,几乎没写过单元测试。 主要是没有认清单元测试的重要性和必要性,所以也没花时间去研究,所以一直不是十分清楚单元测试到底应该怎么写。这大概也是我编码水平增长不快的一个原因。 以后会尝试使用单元测试,希望能达到楼主展现出来的境界。 |
|
返回顶楼 | |
发表时间:2007-07-10
写还是会写的,最起码为程序正常的工作是会写一些东西来验证的,只是很少有人会有多余的精力去维护它,完善它.......
|
|
返回顶楼 | |
发表时间:2007-07-10
程序员开发的习惯不同也有影响,比如,有人喜欢简洁,就从一条输出语句着手,逐步完善和验证自己的想法,形成一定的代码量;也有人喜欢规范一些,基于JUnit等来写测试代码,这样可以保证每次的变更都是正确的;这两种都是TDD的原型,只是前者可以直接转化为可以正常工作的代码,对于后者要麻烦一些,可好处是利于维护,避免程序修改大的时候失去控制,降低引入bug的机率.
有时会觉得单元测试固然重要,对自己来说是件好事,可对于交接的人就需要维护两份代码,似乎负担过重...哎,仁者见仁,智者见智吧. |
|
返回顶楼 | |
发表时间:2007-07-11
这个问题其实是一个典型的理论和现实的问题。
对于新手而言,连代码都不能完成的情况下,你是不可能说服他再花额外的时间写更多的代码的。 现实中的人又何尝不是如此呢?经济基础差的人看重短期利益,只有经济基础好的人才可能更加看重长期利益,当然不能排除例外的人 |
|
返回顶楼 | |
发表时间:2007-07-11
有些公司要求交付的项目时有源码,当然要有相当分量的testcase.
|
|
返回顶楼 | |
发表时间:2007-07-11
不写单元测试。只写main方法。基本上一个类一个main。
main方法里面对类的实现进行测试,当然用到了jdk的断言。 以前写c代码时候,也是如此测试,所以就一直保留了。 当然要结构层次分明才好,如果类和类之间有很多的依赖关系,那么写main的时候是一个噩梦,这个时候就要考虑重新设计结构,划分层次了。 至于junit等测试框架,真的不熟悉。也就不用了。 |
|
返回顶楼 | |
发表时间:2007-07-11
chenk85, 好好努力吧,如果还未走出校门,那么将来你需要学习的JAVA知识还很多。
前面的代码我没有看。如果你能做到先写Test,再写代码,那么你就了解了TDD的精髓。 招聘时看重的,据我所知,不是对XP, OO ,AGILE的了解和认识,而是对各种框架的使用,英文水平,以及工作经验。spring ioc, hibernate, struts1.x 弄明白了,全国各地随你找工作。 |
|
返回顶楼 | |