如果我使用被测试类的多种方法创建单元测试,它还是单元测试吗?例如,
@TestFixture
public class TestBehavior {
@Test
public void testA() {
// arrange
Model sut = new Model();
// act
string actual = sut.doA(5, sut.doB());
// assert
assertEqual(expected, actual);
}
}
它可以被视为单元测试吗?或者一些卑鄙的集成测试,因为它调用doB()?如果它是同一个类的不同对象,则调用doB()?
答案 0 :(得分:1)
单位的定义在很大程度上取决于你的用例 - 在某些情况下,它只是一种方法,在其他情况下是几种方法或整个类。
在程序编程中,单元可以是整个模块,但更常见的是单个功能或过程。在面向对象的编程中,单元通常是整个接口,例如类,但可以是单独的方法。
查看this链接,了解有关面向对象编程中单元测试的有趣论文!