如果说领导让研发写单元测试,我敢打赌80%的研发脑海里都会想过这个问题。 我写了一个函数,这个函数的结果我当然知道是什么,但是为什么我还要写一个单元测试来确定这个事情? 我的答案是,再简单的事情,都有可能出错。 让我们想想我们的工作中的情况在自己写功能的时候,有多少情况是自己一次编写就能确保这个函数能够一次编译通过的?随着自己工作年限的增长,我写的代码越多,就越明白一个道理:人是会犯错误的,无论这个错误有多么低级。 以下是一个非常简单的例子。 class Member def need_notication? return false if %w(cancel paid).include? self.status self.expire_date - 1.week > Time.now end end 如此简单的代码,程序员一眼就能看
………………………………