彩票走势图

测试尚未准备就绪的API

原创|行业资讯|编辑:郑恭琳|2021-03-16 14:33:38.470|阅读 99 次

概述:由于当今应用程序的复杂性,很容易遇到无法同时准备好所有代码的情况。作为开发人员,您可能在等待第三方API的更新,合作伙伴组织完成其代码或组织中的其他团队准备开始进行测试的组件。这可能会拖累组织的整个发布时间表,因为备份了测试以等待所有工作完成。 设计服务虚拟化就是考虑到这一点。通过模拟您否则会丢失或等待的相关组件,它为开发和测试团队提供了不受限制地访问完整测试环境的权限。

# 慧都年终大促·界面/图表报表/文档/IDE等千款热门软控件火热促销中 >>

相关链接:


由于当今应用程序的复杂性,很容易遇到无法同时准备好所有代码的情况。作为开发人员,您可能在等待第三方API的更新,合作伙伴组织完成其代码或组织中的其他团队准备开始进行测试的组件。这可能会拖累组织的整个发布时间表,因为备份了测试以等待所有工作完成。

设计服务虚拟化就是考虑到这一点。通过模拟您否则会丢失或等待的相关组件,它为开发和测试团队提供了不受限制地访问完整测试环境的权限。


责备游戏

在敏捷环境中,开发人员可以在互连的系统组件上的所有代码库中同时工作。每个开发人员都需要访问其他开发人员的组件才能完成自己的任务。通常,我们会遇到这样的情况:一个开发人员在项目早期就需要另一个开发人员的组件或API的响应,有时甚至这么早,以至于另一位开发人员甚至没有创建正在被调用的代码。这意味着一个或两个开发人员将被卡住,直到两段代码都完成为止。在软件中,我们称其为死锁。


在编写代码时,我经常面临这个挑战。我的团队可能正在开发面向客户的Web应用程序,每个冲刺都包含一组新的用户案例,以根据我从REST API获得的数据来实现功能。而且几乎每天我都会陷入困境,无法在我的应用程序代码上工作,因为我所依赖的API之一未处于工作状态。这可能有多种原因,但这通常与我的一位同事在使用API时在其代码中的某个地方引入错误有关。

这样做的最大问题是,我必须在截止日期之前完成,而我的经理希望我在sprint结束时使用此代码。因此,我通常要做的就是走到同事的办公桌旁,与他们一起仔细阅读他们的代码,以帮助解决他们面临的挑战。 (这太好了……我们正在与开发人员合作……真是难得一见!)但是不幸的是,最终发生的事情是,我花了大部分时间调试他们的问题,以使自己不受阻碍。这意味着他们按时完成了代码,而我没有按时完成。

等待访问相关功能会限制敏捷性。我应该如何在这些条件下工作?答案是模拟。我可以使用Service Virtualization摆脱这些僵局,并快速构建一个虚拟资产,该虚拟资产实际上模拟任何预期的行为。


使用服务虚拟化

我将使用Parasoft Virtualize向您展示如何执行此操作(您现在可以在新的Community Edition中免费使用它)。您可以在GUI中或从类似WSDL的定义文件中创建脚本,而无需执行任何脚本。例如,在API开发的早期阶段,WSDL或架构可能不可用,而开发人员可能仅提供了示例响应。使用Virtualize,这已经足够上手。我只是抓住响应对象并将其粘贴到响应者中。然后,我可以拨动开关,该工具将即时创建一个架构。这非常有用,因为我不必担心发送正确的有效负载,并且随着数据的变化,Virtualize将确保每次发送响应时有效负载结构保持一致。这使得模拟响应非常容易。端点是自动设置的,并且始终可用。我只需要关注我希望新响应发送的数据。借助Virtualize,您还可以可视化地对各种消息格式进行建模,例如XMLJSON,以及各种旧式,财务,医疗保健和其他特定于域的格式。


以这种方式处理模拟响应有很多优点,其中最重要的是时间。只需数分钟即可建立一个简单的服务响应,而等待真实服务的天数就可以设置。这使我可以立即开始工作,做出响应以进行开发,并立即看到对其新代码的影响。这可以帮助我更聪明,更快速地编写代码,因为通常无法预测的条件可以立即进行测试,并且可以实时调整功能。

这正是我要使自己摆脱等待周期的方法。当其中一个后端API出现故障时,我将使用服务虚拟化来模拟响应。我可以放入任何想要的有效负载,并且我知道它是准确的,因为我使用了定义。我也有信心,因为我会控制一切,它将为我提供正确的数据。使用这项技术使我能够按时完成任务。




标签:

本站文章除注明转载外,均为本站原创或翻译。欢迎任何形式的转载,但请务必注明出处、不得修改原文相关链接,如果存在内容上的异议请邮件反馈至chenjj@capbkgr.cn


为你推荐

  • 推荐视频
  • 推荐活动
  • 推荐产品
  • 推荐文章
  • 慧都慧问
扫码咨询


添加微信 立即咨询

电话咨询

客服热线
023-68661681

TOP