我不太关心这篇文章的前提,因为我在comment上做了这样的事情:
The stem of the problem is that most “units” of code in business software
projects are trivial.Change the size of the unit until it
is no longer trivial? Who the hell
defined the unit of code as a single
function or method anyway!?
和
Well,some of the guys I worked with
wanted to define a unit as single
functions. It was completely stupid.
My favorite definition of “unit” is:
the smallest piece of the code that
can be usefully tested.
我们花费太多时间来模拟一些对象,并测试一个微不足道的代码,而不是真的添加任何有价值的东西?
单位测试应该是“单位”?功能级别测试是否过于精细?
A unit is the smallest testable part of an application.
这似乎与您的问题中的评论一致,即单位是“可用于有用测试的最小代码”。换句话说,使单元尽可能小,以致开发人员/测试人员本身仍然有意义。
通常,您将要隔离测试项目的部分,然后测试它们如何组合进行交互。拥有单元测试的各个层次(层次)通常是一件明智的事情,因为它有助于确保您的代码在各个层面上都能正常工作,从个人功能到完全独立的任务。我个人不认为测试个人功能是错误的,甚至没有帮助,只要他们自己做一些有用的事情,往往就是这样。
说实话,“单位测试”中的“单位”没有明确或严格的定义,这正是为什么使用模糊的术语“单位”!学习什么需要测试,什么水平是一个经验问题,而且经常是简单的试验和错误。听起来好像有点不满意,但我相信这是一个很好的规则。