单元测试,其实挺讨厌的,程序员写东西的时候不喜欢打断思路,一气呵成的写完,尤其是在增加某些功能的时候。
我有强迫症,在功能封装好之后不做单元测试我就感觉好像少了什么东西,对封装好的代码也没信心了。VS,XCode都可以在项目里引入单元测试模块,不过我不喜欢用,我喜欢单独创建一个工程,把做到的功能代码考进去进行独立单元测试,虽然这样比较麻烦,尤其是比较大的架构下,需要把架构框架也都引进来。
其实最开始我不喜欢做单元测试,嫌麻烦,浪费时间。。。然后开始强迫自己做单元测试,现在结果习惯了,不做都难受了。
做单元测试的好处,我现在这份工作,公司团队都比较年轻(就我一个大叔,剩下最大也就是工作5年左右),现在境况是,每逢上线必加班,而且他们经常是一加班就是一个通宵,一次性上线成功率很低!很多低级bug都在最后上线的时候被测试出来。相反我的代码一次性上线成功率就很高,因为我把很多问题都在单元测试的时候排查了。
不是自夸啊,我这是在吐槽呢,说了半天还没说出槽点,每次上线加班的时候我的事情基本就是刷微博,无聊的等着他们把东西改好。。。我的代码基本都是一次性通过的然后等着,等烦了就先撤了,然后第二天发现他们又通宵了。。。呵呵,年轻真好
4楼 @herokingsley 单元测试主要还是对封装好的功能进行测试的。
比如你有一个数据库表,需要查、插、改、删,你做了model、dal,封装了bll,然后你就可以做一个简单的测试程序调用你做好的东西,看看每个字段是否都正确了,故意传一些脏数据进去看看容错能力是否合格了等等。
大多数IDE全都会带有单元测试功能,会自动引入一个单元测试模块,模块允许你写代码去调用方法,运行单元测试的时候就会看到你的方法是否通过了。
不过,我有强迫症,要求工程整洁干干净净的,不想看到和工程无关的代码,所以我会单独建立一个工程专门进行单元测试用。