Web services CI CD工作流中集成测试的范围

Web services CI CD工作流中集成测试的范围,web-services,continuous-integration,tdd,integration-testing,continuous-deployment,Web Services,Continuous Integration,Tdd,Integration Testing,Continuous Deployment,问题更多的是关于对正常/理想CI流的基本理解以及对其中集成测试范围的理解 根据我的理解,基本的CI CD流程是 UnitTesting --> IntegrationTesting --> Build Artifact --> Deploy to Dev/Sandbox or any other subsequent environments. 因此,单元测试和集成测试共同决定/确保构建是否稳定并准备好部署 但是,最近,我们在我的团队中进行了讨论,我们希望在Dev/Sandb

问题更多的是关于对正常/理想CI流的基本理解以及对其中集成测试范围的理解

根据我的理解,基本的CI CD流程是

UnitTesting --> IntegrationTesting --> Build Artifact --> Deploy to Dev/Sandbox or any other subsequent environments.
因此,单元测试和集成测试共同决定/确保构建是否稳定并准备好部署

但是,最近,我们在我的团队中进行了讨论,我们希望在Dev/Sandbox等上对部署的实例运行集成测试,以验证部署后应用程序是否工作正常

而构建-部署-测试工作流表明,这可能是一种可行的方法

因此,我的问题是:-

  • 集成测试是否应该测试不同环境的配置
  • 是否应该在打包应用程序或部署应用程序之前运行集成测试
  • 如果有的话,需要一些自动化测试来测试部署的应用程序在所有环境中的功能? 如果不是集成测试,那么什么是替代解决方案
  • 您正在将集成测试与

    集成测试检查某些组件是否可以一起工作(可以集成)。您可以进行集成测试,以验证数据层API如何与数据库一起运行;或者Web API如何响应HTTP调用。为了对其组件进行集成测试,您可能无法使整个系统完全正常工作


    与集成测试不同,系统测试需要实现和配置所有组件。这是端到端测试(例如,从web请求到数据库记录)。这种类型的测试需要部署整个系统,这使得它们更“真实”,但成本更高。

    在您看来,进行系统测试的效果如何。甚至需要吗?通过这些连接,可以在应用程序启动时检查web请求。是否真的需要单独的系统测试?是的,的确如此。例如,整个系统可能由许多组件组成(由不同的团队开发)。您可以单独测试组件,但这不能保证您的组件不会被其他组件损坏。