如何区分单元测试和集成测试?

时间:2021-07-23 09:13:30

标签: python pytest

我在拉取请求审查期间收到了此反馈:

<块引用>

似乎是非常混合的单元和集成测试

假设您有一个 django 后端测试。两种类型的测试都使用相同的工具(pytest、ORM、mocking...)

如何区分这两种类型的测试?

2 个答案:

答案 0 :(得分:1)

我会说,如果它只测试一个函数,那么它就是一个单元测试,如果它测试一系列相互交互的多个函数,那么它就是一个集成测试。

This page explains it well.

答案 1 :(得分:0)

我同意 Michael 的观点,单元测试的目标是尽可能小的情况,例如:

assert add(2, 4) == 6

集成测试包含更多可能需要存根/伪造/模拟的活动部分,例如:

assert mult(10, add(2, 5)) == 70

您可以说集成测试正在检查单元相互集成的程度。 对于包括应用系统中更多“移动”部分的测试,我们进行了测试。

这是一个很好地解释它的视频: https://www.youtube.com/watch?v=vqAaMVoKz1c&feature=youtu.be