【发布时间】:2018-08-15 14:20:47
【问题描述】:
集成测试依赖于外部系统,例如数据库或网络连接。这些组件应该在单元测试中模拟。 但是当我们测试三个不同的类时,它们的行为相互依赖,这是集成测试还是单元测试?这些课程应该被嘲笑吗?让我们假设这些类无法访问外部系统,并且它们的行为是严格相关的。
【问题讨论】:
标签: java unit-testing testing integration-testing
集成测试依赖于外部系统,例如数据库或网络连接。这些组件应该在单元测试中模拟。 但是当我们测试三个不同的类时,它们的行为相互依赖,这是集成测试还是单元测试?这些课程应该被嘲笑吗?让我们假设这些类无法访问外部系统,并且它们的行为是严格相关的。
【问题讨论】:
标签: java unit-testing testing integration-testing
首先,术语因公司而异。
如果我没记错的话,根据“Google 如何测试软件”一书,他们将测试称为“小型测试”、“中型测试”和“大型测试”。 其他公司称其为“白盒测试”、“单元测试”、“集成测试”、“端到端测试”。即使在一家公司中使用相同的名称,在另一家公司中也可能意味着不同的含义。
其次: 模拟或不模拟取决于您要测试的内容。如果您想测试这 3 个类的交互,那么我建议按原样使用所有三个类,除非:如果您想隔离一个类的行为或想要一种难以实现的行为/不切实际的行为/尚未 -实现行为或者很难使用其他类,我建议模拟其他类。
【讨论】:
据我所知。
但单元测试可能支持集成测试;如果使用的单元测试框架支持。
【讨论】: