#TAPD开放能力实战分享#
作为支撑亿级用户的高频协作产品,「腾讯会议」通过深度整合TAPD的智能化、开放平台与插件能力,构建起“TAPD+代码托管+智研流水线+度量”研发效能体系,实现跨平台协同提效、流程自动化与质量强管控。让我们一起来看看腾讯会议如何基于TAPD重构研发效能体系。
腾讯会议打造了“TAPD+代码托管+智研流水线+度量”研发效能体系,从产研流程提速到研发成本治理,再到数据量化落地,形成效能闭环。其中TAPD串联了从需求提出到开发、测试,最后发布上线的整个流程,提供了各种强大的工具能力,支撑整个研发效能体系的建设。以下将从使用难度上由浅入深介绍,腾讯会议如何使用TAPD能力构建研发效能体系。
以TAPD智能化为流程引擎,通过企业微信机器人和自动化助手实现跨平台协同。通过在TAPD上配置触发条件,满足条件就可以执行相应的动作,比如流水线和其他有接口的平台。
借助企业微信机器人在企业微信群中展示TAPD里配置好的具体数据或图表,打破协作孤岛,主要包括四类应用场景: 超期预警,当我们想对处于测试评估中的某个需求进行预警时,可以通过配置TAPD企微机器人,把对应的消息推送到群中,提醒对应负责人,需求处于评估中,即将逾期。 各种提醒,比如有些开发同学忘记填写预计时间,可以通过配置企微机器人的方式,把提醒发送到企微群中,提醒对应开发同学填写相关字段。 数据统计,测试同学可以通过配置TAPD企微机器人的方式,统计待测需求的数量,同时附带需求链接,提醒及时测试。 图表展示,当你想统计当前没有解决的bug数量以及分布情况,可以通过在TAPD上配置bug解决状况的图表,将图表通过企微机器人推送到群中,直观展示当前缺陷的处理情况。
TAPD自动化助手提供跨平台联动功能,解决各种复杂需求、管理场景,提供三种响应模式: 自带响应模式,当满足特定的触发条件后,会执行相应的响应动作,比如转单或者变更字段,响应比较及时。 启动流水线模式,当满足特定触发条件后,启动对应的智研或者蓝盾的流水线,这种模式可以自定义脚本实现稍微复杂的逻辑。 webhook模式,当满足特定条件后,向指定域名发送请求,可以自定义服务逻辑实现各种复杂逻辑且响应及时。
其中,自带响应模式主要是通过触发条件后与TAPD或企业微信之间进行交互。比如:直接与TAPD平台交互时,配置一个父子联动需求转单的例子,当子需求转到某一状态的条件满足后,父需求相应的也会变更到对应状态。与企业微信交互时,会自动拉一个企业微信群,把需求对应的产品、开发、测试人员都拉进群里,自动提醒产品同学进行需求宣讲。
流水线模式,即满足条件后触发对应的流水线。腾讯会议的父子联动项目运用这种模式,通过自动化助手配置触发条件,去执行对应脚本,实现父需求或子需求转单后对应子需求或父需求能够跟随相应的状态变化,减少人工操作。
XCAST属于腾讯会议相关的一个子模块,但分属两个TAPD项目,涉及相关的缺陷需要进行同步。腾讯会议使用webhook模式,通过自动化助手配置TAPD钩子,监听数据变动,若需求变更,会对应触发自建服务接受包含变动信息的数据块,通过加工处理后就可以调用TAPD API,产生新的数据,实现另一个项目的需求变更。
TAPD有着丰富的API接口,便于二次开发,满足自定义需求。基于TAPD强大全面的开放平台能力,腾讯会议构建工具链自动化流水线,实现快速建单和批量转单。
配置企微指令快速建单。日常工作中有些重复性较高的操作,希望通过企微指令快速实现,减少人为操作。通过自动化设置,我们可以在客户端发送消息,传送到企微服务器上,然后企微服务器会把请求再发送到业务后台,调用对应的TAPD API去进行相应操作。相当于把这些消息在业务后台转化为对应的指令,映射到对应的执行操作上,实现企微指令在TAPD快速建单。
TAPD API能力实现快速批量转单。腾讯会议目前阅读转单次数在3000+次,纯手工转单会产生大量的等待时间。在需求绑定分支的前提下,把TAPD需求价值流和工蜂代码工程流相结合可以很大程度提高提单和需求流转速度,从而提升研发效率。
可从三个场景具体了解:【测试通过合流中】自动转单到【合流通过验证中】,需要定时任务去查询代码托管平台的迭代分支状态,如果查到需求已合流,就可以批量转到【合流通过验证中】;客户端需求【合入验证通过待发布】自动转单到【已发布】时,我们有定时的流水线任务启动对应qflow平台的任务状态,如果发现该需求已灰度,就会调用TAPD API批量实现转单;后端服务发布后关联需求自动转单到【已发布】,我们会定时轮询。服务关联部署单是否执行成功?如果执行成功,我们就会查询需求单所有关联服务是否全部完成发布,如果完成就把这个单对应转到已发布状态,未完成则不转单。
TAPD插件提供了需求状态流转的拦截控制能力,这是TAPD的高级需求管理能力之一。腾讯会议通过TAPD插件将质量管控深度融入工具链。在插件中设定特定条件,当需求从状态A转到状态B时,若设定条件通过就可以实现流转,不通过则拦截。比如从测试评估转到测试中时,我们就可以通过TAPD自动化助手配置需求流转校验条件。
实践中,腾讯会议使用两个插件保证提测质量: TAPD提测门禁插件,很多测试团队的重要诉求是希望通过运行自动化动作或者自测条件高质量提测。TAPD插件可以很好满足需要。当需求从测试流转到测试中时,我们会执行TAPD提测门禁插件,这个插件会启动对应的流水线,执行TAPD自动化用例。若用例通过,则直接转到测试中,若不通过,就需要测试人员审批,审批通过之后继续转到测试中。当不通过时,相当于实现了需求状态的流转拦截,保证了提测质量。我们每个月都会拦截几十次,每一次拦截都是对提测质量的进一步保证。
技术评审门禁插件,我们通过技术评审插件,实现在需求开发前对复杂需求进行技术评审。当需求流转到联调中或体验中时,我们TAPD的技术评审插件会检测技术评审结论字段,如果字段是通过状态,就可以流转;如果没有通过,则无法流转,会发送对应的消息给到相关人员进行技术评审后重跑门禁。
TAPD不仅是一个项目协作平台,更是推动研发效能高效运作的关键工具。腾讯会议借助TAPD智能化规则定义流程,通过开放接口实现工具链的互联互通,并利用TAPD插件来保障测试质量,构建起“TAPD+代码托管+智研流水线+度量”效能体系,让团队协作更高效,项目管理更流畅。
腾讯会议依托TAPD开放平台和插件能力,探索出高质量交付的实践经验,为其他团队提供了可落地的工具整合方案。
TAPD开放平台是面向开发者的应用与服务平台,旨在支撑各团队对于TAPD的集成化需求。目前,TAPD开放平台已开放了 330+ 数据接口,提供场景化嵌入和丰富的挂载点能力。不同的团队可以根据自身业务场景的需要,调用应用或服务的原生能力,实现数据打通和标准化接入。
TAPD开放平台现已与腾讯CODING、腾讯CI、腾讯会议、Perforce等多个协作工具互联互通。