【Parasoft SOAtest】如何减少重复工作以加速功能测试进程

Parasoft SOAtest将人工智能和机器学习引入自动化测试,以帮助用户使用多个接口(即移动,Web,API和数据库)测试应用程序。其自动化API测试通过在服务发生变化时主动调整测试库,降低了返工成本。

Parasoft SOAtest有效地将您现有的测试工件转换为安全性和性能测试,以提高可重用性并减少冗余,同时建立可作为一部分持续集成和DevOps管道自动化测试的基础。本文将介绍当组织使用SOAtest缩小开发、QA和性能测试团队之间的差距时,减少重复工作在测试组织中实现完全协同的价值。即如何使用Parasoft SOAtest减少功能和非功能测试的返工,同时改善团队之间的协作,同时加速测试以跟上开发。


开发人员可以创建服务定义测试

使用Parasoft SOAtest,开发人员可以非常轻松地验证:

  • 服务定义在语义上是否正确
  • 该服务是否有效
  • 该服务是否符合互操作性标准
  • 服务最近是否有变化

使用SOAtest的开发人员可以通过使用该服务定义文件轻松创建测试,以验证和实施WSDL、Swagger、RAML等策略。SOAtest将执行模式和语义有效性测试,以确保定义文件是机器可读和可消费的。它将验证互操作性,以确保它符合服务定义文件的行业标准,最后它将创建一个回归测试,以验证自上次测试运行以来没有任何变化。这些测试为QA提供了稳定的基础,可以有效地构建一个可靠且有弹性的测试策略。


开发人员可以创建组件测试(烟雾测试)

使用Parasoft SOAtest,开发人员可以轻松创建组件测试以测试服务的各个组件,验证:

  • 请求/响应有效负载格式是否正确
  • 响应状态是否如预期
  • 响应错误有效负载是否具有正确的消息
  • 响应是否符合基准标准
  • 是否在预期的时间范围内收到回复

使用SOAtest,创建这些功能性冒烟测试就像将定义文件上传到SOAtest并选择创建functional test一样简单。这将自动解析您的API,并为该API中包含的每个单独服务创建一个测试。这些测试可立即运行,并允许开发人员花费最少的时间来验证他们可能收到的错误是正确预期的错误消息和响应。


重用开发人员的测试工件有效地创建有意义的场景测试

QA可以重用开发人员在Parasoft SOAtest中创建的相同组件测试,以确保一切都在指定的场景中运行:

  • 确保API合并到方案中时可以工作
  • 用数据驱动测试
  • 使用响应数据提供给后续请求
  • 可选择启动和拆除测试

因为QA已经拥有它所需的构建块,所以它们可以通过简单的复制和粘贴命令无脚本地挑选将用于测试其场景的各个组件。并且可以按正确的顺序拖放这些组件,重新构建这些组件以创建每个方案。第一次测试的响应和信息可以通过几次单击进行参数化,用于驱动第二次测试的请求数据,依此类推。

这些场景测试的创建效率受益于开发团队已提供的组件变得更高。使用SOAtest,您可以进一步提高效率,通过机器学习将业务逻辑(即断言、验证、身份验证)templatizing为规则,从而减少更多的返工。重用测试逻辑可提高API测试的一致性,同时通过消除之前由另一个团队成员完成的工作来加速测试。


减少开发与测试之间的碰撞,加速缺陷修复时间

由于发展与质量保证之间的差距在质量发现缺陷时发生碰撞,记录该缺陷、拍摄屏幕截图、写出揭示缺陷的确切测试步骤,然后将其传达给开发人员是一项耗时的任务,开发人员在工作中回复这种事情会造成一种令人沮丧的环境。

开发和测试之间的这种碰撞减缓了缺陷修复的时间,并且从开发人员和测试人员中花费了他们创造更多价值的宝贵时间。当两个团队都在使用Parasoft SOAtest时,通过创建可重新运行的测试场景来填补这种沟通协作的差距,从而大大加快测试人员与开发之间的知识共享速度。当QA成员发现问题时,他们可以快速创建测试场景(.tst文件)来展示行为,然后可以与开发团队共享。随后开发人员可以在其计算机上运行测试方案以查看行为,并且可以查看导致错误行为的确切步骤和调用,从而缩短缺陷修复时间。


管理API架构和服务更改以减少测试维护的负担

质量保证创建了一个一致的策略来测试他们的API,这些策略是基于开发创建的现有组件测试构建的,通过模拟业务逻辑的应用程序来减少返工,从而可以在整个测试团队中重用和利用它。变更可以采取多种形式,例如:

  • 协议消息格式更改
  • 从API添加或删除的元素
  • 代码更改影响数据格式
  • 正在重新构建微服务的服务

通常质量保证组织的一个巨大问题是了解这些更改、确定受更改影响的测试用例并更新和重新运行这些测试用例来验证更改是否有破坏任何内容。如果没有SOAtest,这些内容需要对API定义文件的两个版本进行大量研究,同时还需要花费大量精力来理解受影响的测试,以及如何编辑或重写每个受影响的测试以验证更改。

SOAtest通过其Change Advisor模块为QA提供了一种管理和减轻变更影响的简便方法。当您的API架构或服务发生更改时,开发人员将更新该定义文件并为QA提供最新版本。SOAtest的Change Advisor模块自动将定义文件的新版本与旧版本进行比较,创建两个映射,以图形方式布置旧定义文件和新定义文件之间的操作和模式,然后QA可以进入,并轻松识别需要更改的内容。一旦审核了所有更改,就可以轻松应用该更改模板,以自动批量重构受这些更改影响的所有现有测试。


在执行中重用现有的测试工具

QA现在已经完成了它的工作。测试人员创建了多个复杂的测试场景来测试API的业务逻辑,并相互协调验证服务的功能。发现的任何缺陷都可以通过.tst文件的形式轻松传回开发,以便快速复制和修复。

在许多情况下,性能测试人员需要在这些条件下专门创建自己的测试场景。幸运的是,通过利用Parasoft SOAtest,性能团队无需重复工作。他们可以利用开发创建的组件测试和QA创建的场景测试的组合来验证他们的SLA和应用程序的及时性能,所有这些都在SOAtest的负载测试模块中。

在负载测试模块中,可以使用任意数量的虚拟用户轻松利用和驱动现有的SOAtest组件或场景测试,并分布在任意数量的从属计算机上,以测试不同负载类型下的场景,并且允许您验证应用程序在各种类型的压力下是否可以按预期运行。


结论

通过利用Parasoft SOAtest的功能,团队可以减少返工并提高效率。它很容易在企业或单个项目采用,因为它是为了灵活扩展而创建的,并且它不需要高水平的技术专业知识来进行测试创建和自动化。拥有一个集开发、质量保证和性能的功能测试于一体的统一工具,可以实现突破性的协作水平,并减少可能影响底线的返工,从而减少整体测试工作、时间和成本。


猜你喜欢

转载自blog.csdn.net/ymy_666666/article/details/86511303