我的公司有一个规则是通过单元测试或集成测试达到 75% 的测试覆盖率。由于整个系统的复杂性,开发人员倾向于编写集成测试(例如,针对正在运行的应用程序使用 selenium webdriver),而不是承担模拟依赖服务/类的负担。
我不是那个朋友,我想知道 i-tests 的测试覆盖数据实际上意味着什么:
在我看来,测试应该定义预期的行为并对其进行测试。如果 i-test 深入到应用程序中,通过许多服务,可能到 DB 层并再次返回,它将覆盖很多行,但绝对不清楚这种覆盖行的预期行为是什么. 因此,覆盖数据的质量是有问题的恕我直言,而且——更糟糕的是——增加了维护工作。
那个POV正确吗?在与管理层讨论时,我如何支持它?