本文并不是告诉你如何使用NUnit进行单元测试,关于你如何进行单元测试的文章已经有很多。我这里只是说说我接触单元测试这一年半的时间自己所领悟到的一些东西,当然这只是我个人的心得,估计里面也会有错误,期待各位高手来对不对的地方进行指正。
初次接触单元测试是一年半以前参加一个工作流引擎的开发。那时我刚毕业,对于TDD的这种先写测试后写实现的方式来说还感到很陌生。同时由于公司以及人员
的关系,实现已经先一步做了。我所要做的就是对每个类的每个方法进行测试。那时候的我跟大多数刚出校园的学生一样,工作很努力,我对每一个类里的所有属性
和方法都进行了测试。那个时候由于我的经验的缺少以及并不真正的了解那种测试为先的方式,所以很多时候看见绿色的横条,我都很高兴自己的代码写的正确;但
其实真正应该高兴却是那位写实现的家伙。
这段时间的工作让我了解了如何去写单元测试并知道了一些基本的概念,比如stub等等之类的东西。但是我仅仅停留在会写的阶段,如果给我一个例子让我先去
写测试后写实现,我觉得当时的我并不能够做到。因为毕竟从传统上来说从来没有过这种样子的开发,心理上和技术上都难以接受。同时这个时候也看了不少有关单
元测试的文章,明白测试的同时要切断这个类以外的依赖关系,并知道在不方便构造测试数据的时候直接使用Mock来虚拟数据进行测试。但无论如何,作为一个
刚刚走出校门的学生,当时能够直接接触到单元测试这种应该来说比较新颖的事物,也算是一个不错的机遇。
去年4月在工作流引擎做完以后,便再也没有机会和时间来给我继续去做这些东西了。这个时候我基本上同大多数的中国的程序员一样,没日没夜的加班,赶项目进度,跟客户周旋;直到去年年底接到2ndgatechina的口头offer!