有一个新的想法或者疑惑?先写个测试吧!

帮助客户实施敏捷,已经有一些开发人员在尝试使用TDD的方式进行开发。一再向他们强调:“写任何代码之前,先写一个会失败的测试”。这里说的写代码,不仅仅是指开发sotry或者修改bug,很多时候,当你有了一个新的想法,不妨先写一个测试:

某位开发人员告诉我,他想在项目中Spring事务,但是不熟,所以想花时间预研一下。讨论完Spring事务相关的问题,我接下来问他,有没有写测试?有了一个失败的测试,不管查资料,还是咨询别人,尽管做任何尝试,什么时候测试通过了,配置也就成功了。

代码检视,发现某个Dao类中,把对应Domain的enum字段转换成int存储,读取时再把int转换成enum类型。于是问开发人员为什么不把enum类型直接存到数据库,可以省去类型转换的麻烦。开发人员说,当时也曾这么想过,但是觉得enum存数据库可能不行,就转换成int了。其实,有这种疑惑,只需要花几分钟写一个简单的测试:把包含该enum类型字段的对象直接保存到数据库,读取之后,验证enum字段是否正确就行了。

类似的例子还有很多。这样的想法或者疑惑看似与TDD无甚关系,但是通过简单的测试,快速验证了自己的想法。

猜你喜欢

转载自aqingsao.iteye.com/blog/566543