这篇文章里很好的描述了单元测试的必备的认识
http://blog.stevensanderson.com/2009/08/24/writing-great-unit-tests-best-and-worst-practises/
另外总结并加一些自己的看法:
1. 单元测试不是为了完全避免bug,更重要的是,设计代码,因此,在写代码前的设计时,就要设计好单元测试。
2. 思考如何把逻辑分出来,并分别做单元测试。
3. 思考各种情况下的输入来测试相应函数的输出,能提高对函数功能的把握。
4. 单元测试能更好地应对重构。