有一个 A 类进行一些计算,而 B 类正在调用 A 类的方法。单元测试对两个类都很好,但是当一起使用类时,我发现它不起作用。问题是参数的类型不正确。由于这是学校作业的一部分,我应该说它是什么类型的测试。我认为这是一个集成,对吗?
我是这么认为的,因为集成意味着将更多模块集成到一个系统中。我在这里将两个课程整合在一起。
有一个 A 类进行一些计算,而 B 类正在调用 A 类的方法。单元测试对两个类都很好,但是当一起使用类时,我发现它不起作用。问题是参数的类型不正确。由于这是学校作业的一部分,我应该说它是什么类型的测试。我认为这是一个集成,对吗?
我是这么认为的,因为集成意味着将更多模块集成到一个系统中。我在这里将两个课程整合在一起。
通常,“集成测试”是指涉及某些其他系统的测试,例如数据库或文件系统或 Web 服务或其他任何系统。由于在您的情况下它是同一程序中的两个类,因此我将其归类为单元测试。
人们期望单元测试的范围很小,但没有任何硬性规定将其限制为一种方法或一个类。
单元测试检查程序中的代码是否在内部是一致的,这就是这里需要做的。
严格来说,单元测试将是一个单独测试的模块(类),任何外部依赖项都被剔除。
但实际上,所谓的单元测试往往会打破这个规则。例如在 Rails 中,单元测试经常会影响数据库(但这可以避免)。
在您在此处描述的情况下,“集成”可能是最好的术语。
请注意,这些术语的含义可能因上下文而异。我将 Nathan Hughes 所描述的称为系统集成测试,以将其与更细粒度的测试区分开来。