51Testing软件测试论坛

标题: 提高数据管理效率思维脑图实战! [打印本页]

作者: lsekfe    时间: 2022-8-18 11:11
标题: 提高数据管理效率思维脑图实战!
背景
  公司目前通过TAPD对需求进行项目管理,公司的业务需要可视化的方式快速查看需求的资源情况,例如涉及人员、关键时间节点、耗时,我们选择将需求信息维护在TAPD上便于查看;
  同时为了使项目排期更精准,推动大家通过拆分子任务的方式细化排期。
  因为需求拆分子任务和维护需求字段的目的不同,业务同学维护的信息是有重合的,下面给大家介绍下2种通过[url=]技术[/url]手段减少相关同学的维护成本的方式。
  一、子任务自动同步需求字段
  子任务的字段和需求字段是有对应关系的,在需求上我们每次在子任务填写了预估工时,就要对照自己角色算一下,按照角色划分,QA、RD、FE的预估工时分别同步到需求对应角色的「总耗时」,与此同理,处理人、预计开始、预计结束也按照角色同步相应字段上。
  这就让大家维护子任务+需求本身两套字段,比较耗时。
[attach]141539[/attach]
为了通过技术自动实现上述内容,我们需要做到:
  监听到子任务变动
  子任务的信息和需求的信息达到整合
  通过调研发现,TAPD的webhook 可以通过「触发条件 + 执行动作」支持监听,同步需求字段值逻辑可以在我们项目接口实现。
  1.技术方案
  我们需要在TAPD设置webhook的监听规则,当子任务的字段值变化,webhook就会把变更信息推送到我们指定的URL。
[attach]141540[/attach]
例如子任务的处理人变化时,就会请求到我们项目的接口,通过接口我们可以对子任务字段值进行处理。再利用TAPD提供的的api,发送更新需求字段值的请求,交互就完成了。
[attach]141541[/attach]
2.设计流程
  此处以更新角色为「QA」的QA预估工时、测试人员、QA预计开始、QA预计结束字段举例。
[attach]141542[/attach]
就这样,我们就实现了当子任务有字段值变动时,根据规则自动同步到需求字段上。
  二、OmniPlan文件批量同步tapd子任务
  公司的很多业务团队的大项目在用OmniPlan排期软件规划排期、维护子任务。
  使用OmniPlan的优缺点
  优点:专业排期软件,适用于大项目或多需求迭代方式。
  缺点:不是TAPD自带的软件,没有原生接口交互,无法做到信息实时同步其他人。
[attach]141543[/attach]
那么有什么办法可以把OmniPlan和TAPD关联在一起呢?
  对此我们研究了一套实现方案,可以让OmniPlan文件自动生成子任务。
  1. 技术调研
  OmniPlan默认保存的文件格式是「.oplx」,通过路径就会发现它下面还有几个文件。

[attach]141544[/attach]
打开Actual.xml就会发现它的字段值可以跟TAPD子任务的字段有映射关系。这样我们就可以通过解析xml的方式生成子任务的集合。
[attach]141545[/attach]
根据xml的规则对照TAPD的子任务字段一一对应解析,再把组装子任务的结果通过TAPD提供的api发送TAPD新建子任务的请求,新建子任务就成功了。
  2. 实现效果
  在页面上传排期文件,表格显示解析结果,可选择任务批量导入。
[attach]141546[/attach]
TAPD子任务创建成功。
[attach]141547[/attach]
大项目使用OmniPlan排期后,通过上传页面解析的方式,再也不用一个个手动的新建子任务。
  在调研过程中,发现其中还有好几种实现方式,例如可以把排期文件导出为csv文件,再把csv文件解析,但是这种方式需要用户多一步的操作,影响用户体验。
  我们选用的是解析xml的方式,使用xml解析更加灵活,树形结构可存储关系数据。
  总结
  我们用webhook完成了子任务变更同步上需求字段,减少了大家维护两套字段的成本。
  通过解析OmniPlan排期文件,完成了文件直接生成TAPD的子任务,节约了大家手动导入子任务的时间。
  在工作中面对问题,善于发现其中的痛点,善于分析,找到对应的解决方法,做事将事半功倍。











欢迎光临 51Testing软件测试论坛 (http://bbs.51testing.com/) Powered by Discuz! X3.2