彩票走势图

我们如何(以及为何)构建Git工作流程来加速API测试

翻译|行业资讯|编辑:郑恭琳|2020-10-09 16:53:14.857|阅读 159 次

概述:在Git的支持下,我们迈出了重要的一步,并且在此过程中我们学到了很多。我很高兴与您分享这一旅程和我们的课程,因为我们将研究如何(以及为什么)在ReadyAPI中重建Git工作流以适应当今开发团队的需求。

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

相关链接:

(作者:SmartBearReadyAPI项目高级产品营销经理)

随着我们多合一的协作式API质量平台ReadyAPI v3.3.0的发布,SmartBear的团队完成了经过重新思考的Git工作流程的第一轮工作——所有这些工作均可直接在工具中使用。

在谈论ReadyAPI中对Git支持的改进时,我们很早就意识到,当务之急是我们必须退后一步,围绕克服的障碍重新构建现有的集成。特别是对于挑战,用户在作为小型或大型团队的一部分来构建项目时会面对。


Git的支持下,我们迈出了重要的一步,并且在此过程中我们学到了很多。我很高兴与您分享这一旅程和我们的课程,因为我们将研究如何(以及为什么)在ReadyAPI中重建Git工作流以适应当今开发团队的需求。


团队与测试

我们很幸运能够与担当许多不同角色,承担不同职责,进而对我们的应用有不同期望的用户紧密合作。我们也很幸运,我们的工具是应用广泛的,从金融和医疗保健等受到严格监管的行业到更灵活的技术组织。总是能看到团队所面临的挑战有多么普遍。

努力以更高的速度构建和交付高质量的应用程序时,无论正在从事的项目,团队的成员或组织所从事的行业都无关紧要。一些挑战是普遍存在的,特别是在日益分散的劳动力中。

全球范围内都在推动我们共同迈向新技术和交付策略。许多组织正处于数字化转型的过程中:努力将传统应用程序转向更精简、更灵活的小型服务网络。

我们看到来自这些较小服务的团队,为他们提供了更大的灵活性,可以使用适用于他们的技术来更改其应用程序。

它使他们能够按自己的节奏发布,并反过来根据他们的应用程序合作伙伴和使用者接受反馈并关注更新。这种调整以及它们不断发展的工作方式,反映了技术领域的共同目标——更快地响应不断变化的消费者需求并应对未来的部署挑战。

团队合作和协作是实现这种转变的重要组成部分。有无数的服务(SlackBitbucket是我们的客户很喜欢的两个附加工具),其目的是实现更紧密的沟通并帮助管理有关团队如何合作的流程。

ReadyAPI团队认识到我们需要成为堆栈的一部分,并以使我们的平台提高质量和流程的方式实现协作。我们不能成为瓶颈,没有测试应用程序可以生存。

团队的外表或工作方式绝非曲折。因此,我们认识到,为了使我们的应用程序能够满足最广泛的需求,我们需要专注于团队面临的更广泛的挑战,而不是将我们的测试构建工具与存储和管理测试的地方配对。

改善工具中的完整工作流程不仅可以帮助团队克服当前的挑战,还可以使他们发现新的合作方式。

连接性

改善Git支持的第一个机会是我们与提供存储库管理服务的平台和服务的连接。这些共享平台对团队流程至关重要,在许多情况下,这些平台是自动化流程寻找CI/CD任务的最新项目更新的地方。

该团队建立了一个名为“帐户管理”的新身份验证过程,该过程使用户可以输入凭据并将其存储在应用程序级别。这样,它们可以轻松地在与远程提供商的交互中重复使用。

这可以采取以下方式:检索存储库列表,简单地推送更改或打开提取请求,而无需每次都重新输入认证值。

重用和维护与远程提供者的连接的能力为后续更新中的功能奠定了基础,并且为我们使用共享凭证定义了应用程序级空间。

相互作用

用户体验是任何应用程序都至关重要的方面,但对ReadyAPI来说尤其重要,因为它提供了范围广泛的功能、可扩展性和灵活性。

用户使用存储库的体验是我们的主要重点,并且看到了更新的Git对话框的发布,该对话框将所有存储库的交互都放在一个地方。

通过将这些操作置于中心位置——在项目中发生更改时更新对话框,提供新功能以启用更完整的Git工作流(例如创建新分支的功能或使用ReadyAPI打开拉取请求的功能)–我们相信 用户将更轻松地将Git交互作为日常工作流程的一部分,并更清楚地了解他们正在处理的项目中的更改与其对团队其他成员的影响之间的关系。



冲突管理

无论团队大小,使用Git工作流程中最常见的挑战之一就是要彻底解决变更冲突。因此,我们引入了全新的“合并冲突”对话框。

在较高的级别上,它显示了三个项目-当前正在工作的本地版本,即将进行更改的远程版本以及解决冲突后将使用的结果项目。

通过分离这些视图,用户可以准确查看项目中存在冲突的位置。只是现在,它的外观风格与我们导航员的项目树相匹配,并允许用户做出更明智的冲突决定。

在通过并选择解决方案之后,可以将这些解决方案作为批处理应用,并且可以更新项目以满足用户的决策。

最佳实践

为了使我们的Git交互和工作流程尽可能灵活,我们付出了巨大的努力。我们相信以下最佳实践将帮助团队在使用版本控制和ReadyAPI时创建最佳工作流程,同时为其他希望在其测试工具中构建类似功能的人员提供指导:

分离测试和代码

一些将开发和测试更加紧密集成的团队希望将代码和测试整合到一个存储库中,这可能有助于简化这些资产的“移动”,并使应用程序更改与测试更改保持一致。

但这确实限制了测试资产遵循其自身生命周期并从代码存储库中脱离出来的能力。我们相信,通过将项目存储在其资源库中,我们不仅可以通过ReadyAPI中的集成来启用工作流,而且可以围绕测试创建、重用和版本控制启动一个独立的过程。

利用分支

在使用应用程序代码时,分支策略是司空见惯的,但是在谈论测试资产时,在许多情况下却忽略了分支策略。随着项目团队成员的成长,确定如何进行变更以及将变更汇总在一起的策略至关重要。如果用户在单个分支上一起工作,则每个小的更改都会立即对其他人的工作产生影响。

这会产生不必要的噪音和不必要的冲突,在许多情况下,可以通过“最终确定”变更来解决。通过跨独立的分支机构工作,并利用推/拉工作流程和合并功能,团队可以更无缝地一起处理独立但相关的任务。

定义拉取请求策略

测试更改的许多要求是实施任务完成定义的一部分。在分支工作流程中,将更改合并到更大的主分支中的能力是共享工作的倒数第二个步骤。拉取请求是在更新进行之前验证更改和共享调整的机会。

他们还是手动操作的一个很好的步骤-有机会在不参与实际测试创建过程的情况下就决策进行协作-而在较小的项目中,使工作流程的这一阶段自动化可以加快较大的交付过程。了解使用手动或自动拉动请求工作流程的好处和取舍,以及探索组合策略的好处非常重要。

SmartBear的团队希望帮助团队构建最高质量的软件,并推动测试创建效率的提高。

我们一直在寻求有关如何帮助改善您的团队流程的建议,我们热爱我们的用户和广大的开发社区,以提供可解决实际挑战的API测试平台。

因此,如果您有任何其他建议或反馈,请告诉我们!

——祝测试愉快!

(作者:SmartBearReadyAPI项目高级产品营销经理)



标签:

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


为你推荐

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


添加微信 立即咨询

电话咨询

客服热线
023-68661681

TOP