四步了解自动化连续测试

01/09 21:53
阅读数 1.3K

连续测试意味着在整个软件生命周期中对应用程序进行连续测试。作为CI/CD的关键组成部分,它应与其他部分一样实现自动化。

数字原生用户的需求和期望日益增长,促使企业不断通过新的,更好的功能和修复出现的漏洞来增强其软件。越来越多的组织开始采用敏捷开发,创建DevOps文化并实现持续集成/持续开发来满足响应速度更快的开发周期的需求。CI/CD支持每天甚至每小时进行一次软件更新,因此,它在需要快速周转的组织中变得无处不在。但是,实践CI/CD的组织不能为了速度而牺牲安全性。为了确保测试速度与CI/CD速度保持一致,组织需要实施自动化的连续测试。

什么是连续测试?

连续测试是在整个开发周期中不断测试应用程序的过程。连续测试要在管道中尽早开始,且要远早于传统测试。它经常发生在编写,构建或运行代码的每个阶段。但是,组织无法确定是否已经测试了每个版本的每个配置中的文件。与CI/CD的所有其他组件一样,连续测试要求自动化才能有效。

为什么要连续测试?

如果组织正在尝试使用CI/CD,那么需要执行连续测试的原因有两个:

  • 它能使组织在开发和集成的早期阶段解决问题,这比在部署后修复问题更快,更容易且更便宜;

  • 它降低了质量和安全问题进入生产应用程序的可能性。

在企业应用程序方面,CI/CD下的软件开发生命周期(SDLC)在最近五年中发生的变化比在过去20年中发生的变化更大。过去,在瀑布模式下,开发人员会与业务部门经理一起探讨,并听取用户关于其业务需求的意见。然后,SDLC将开始。通过划分的步骤,开发从业务需求到软件架构设计、实现、验证和测试,最后是生产和维护。

传统上,在交付之前不会进行功能测试或验收测试。但这是导致修复软件错误,缓解安全漏洞以及根据更改请求修改代码的最困难,最昂贵且最耗时的原因。当开发团队在最后期限前完成任务时,安全测试通常是第一件要做的事情。在敏捷,DevOps和CI/CD的新世界秩序中,必须在整个SDLC中连续且自动的进行测试。

是否所有CI/CD管道都包括自动化连续测试?

组织可能希望开发团队能够接受任何自动化的测试,这样就减少了要跟踪的活动,可以花更多的时间在开发上。但是,仅有24%的功能性能测试用例可以进行自动连续测试。在软件加快开发过过程中,这个比例甚至更低,仅占测试用例的22%。

为什么需要自动化连续测试?

自动化连续测试适合那些手动测试无法提供优于自动化解决方案的用例,例如:单元测试,组件测试,API测试等。

自动化连续测试的用例范围很广:

  • 一致性:它使组织的应用质量和安全性要求保持一致性。如果组织记录了手动安全性测试然后将其自动化,则它将成为可以在每个构建中强制执行的安全性要求。

  • 速度:利用可扩展工具提供的自动连续测试,开发人员可以在整个SDLC中实时发现并修复问题。这样做可以加快应用程序开发的速度,并减少手动测试常见的错误。

  • 规模:要扩展手动测试,组织需要更多的手动测试人员。要扩展自动测试的规模,组织需要更多的应用程序和内部版本即可进行测试。

向组织的CI/CD管道添加自动连续测试需要一个应用程序测试工具,该工具应易于与组织已经使用的构建,测试自动化和CI/CD工具集成,并具有广泛的Web API支持。对于那些正在寻求作为自动化连续测试的最佳工具来帮助进行安全测试的企业组织来说,交互式应用程序安全测试(IAST)工具是在其整个应用程序组合中执行连续安全测试的一种强大方法。

展开阅读全文
加载中

作者的其它热门文章

打赏
0
0 收藏
分享
打赏
0 评论
0 收藏
0
分享
返回顶部
顶部