单位是一个类还是一个组件(多个类)?
什么应该是单元测试?一个单位应该多少粒度?
答案 0 :(得分:5)
单位是应用程序中最小的可测试部分,通常是函数。
答案 1 :(得分:5)
该术语(类似于与敏捷相关的许多其他事物)过载(对不同的人意味着不同的事物)。它经历了很多变化,现在是主观的。有些人提出了一个新术语微型测试,以防止混淆。
之前它的意思是功能级白盒测试。根据经验,单位通常是由类暴露的行为(通常作为方法)。 在TDD从业者中,有两个阵营
我目前的理解是,这是每单位测试的慎重选择;一种风格并不适合所有风格。
答案 2 :(得分:3)
我会这样说:单元测试中的一个单元是一个实体,对于已知输入,预期定义的输出。然而,粒度级别可能会发生很大变化:从功能到类,再到整个程序。
答案 3 :(得分:2)
它可以是一个班级。它可以是多个班级。它可以是整个系统。这是一个逻辑部分,它接受输入并提供输出 - 但是那些是为该组件定义的。
答案 4 :(得分:2)
它也可能更小;单一方法的单元测试。