最近,我发现我对不同类型的测试的理解可能并不完全正确。
例如,单元测试是对一个单元的测试,其中与其他单元的交互基于模拟(假冒,存根)。因此,无需与文件系统,线程,时间交互...
对我而言,组件测试是围绕一个组件(更多单元)进行的测试,在该组件中我同时使用了模拟和“实际”资源。我都将它们都用于输入仿真和输出测试。似乎更合适的东西。例如,我在嘲笑当前仲裁状态的更改,但是我断言事件存储在RTDB中。
对我而言,这些组件通常是一个应用程序的一部分。
我认为功能测试围绕生产环境中运行的应用程序(exe)进行(黑盒)测试。
好吧,这是真的吗?组件测试是否仅基于模拟?如果是,为什么?我如何确定模拟足够好?我们是否应该通过功能测试运行应用程序?为什么与线程中的应用程序主例程的引导不同?什么是集成测试?
我想听听其他意见,以及您如何做到这一点。您有哪些测试,如何维护它们,以及团队中谁负责?
干杯!