滴滴开源 AgileTC:敏捷测试用例管理平台

用户头像
滴滴技术
关注
发布于: 2020 年 09 月 24 日
滴滴开源AgileTC:敏捷测试用例管理平台



桔妹导读:AgileTC是一套敏捷的测试用例管理平台,支持测试用例管理、执行计划管理、进度计算、多人实时协同等能力,方便测试人员对用例进行管理和沉淀。产品以脑图方式编辑可快速上手,用例关联需求形成流程闭环,并支持组件化引用,可在各个平台嵌入使用,是测试人员的贴心助手!



​1. 背景

随着互联网的快速发展,业务的快速迭代,对项目流程各环节的效率要求越来越高,很多QA开始选择使用线下xmind来编写和执行用例进行测试,但面临的问题也越来越多:



  • 用例管理混乱,无法沉淀:散落在wiki、线下xmind、excel。

  • 用例无法追溯:如遇到线上问题回溯用例及测试情况时,无法追溯且增加排查问题难度。

  • 无法明确感知需求测试进度和结果,研发协作效率低:测试开始了吗?进度如何?失败的case有哪些?等这些问题无法明确感知。

  • 测试活动相关数据无法沉淀:研发自测结果?打回率?测试用例失败率?测试周期?



因此,我们需要一套完善的测试用例管理系统来满足我们的日常测试需求。然后,业界比较可靠的用例管理平台,如test-link,QC,禅道等,它们均采用传统用例管理方式,类似excel的操作体验,测试用例编写过程较繁琐,与当前业务普遍使用的脑图管理方式不匹配,也不符合当前业务快速迭代的诉求。



2. AgileTC是什么

AgileTC是一套敏捷的测试用例管理平台,具备与xmind等脑图工具一致的操作体验。支持测试用例管理、执行计划管理、进度计算、多人实时协同等能力,方便测试人员对用例和测试过程进行管理。



线上化的操作方式便于测试资产沉淀和测试过程数据沉淀,为测试改进提供抓手。



产品可以独立使用,也支持以组件化方式嵌入项目管理平台,配合项目管理使用。



3. AgileTC可以做什么

测试用例集管理



AgileTC能够将用例集与需求关联,支持xmind/xmind zen的导入/导出,具备丰富的搜索能力,如根据用例集名称、创建人、管理需求和创建时间进行搜索。



用例编辑



AgileTC支持多人实时协同编辑用例集,其中一个人的修改,会实时同步到打开相同用例的其他客户端,实现更加高效的测试集编写和测试执行协同。支持用例优先级和自定义标签标记。服务端和客户端增加了定时巡检探活机制保障连接稳定性。支持连接异常(如浏览器异常退出或系统故障等)场景下,自动保存用例集。



测试任务管理



用户可以根据用例中的优先级和标签圈选测试用例,组合成自身需要的测试任务。支持任务分配邮件通知机制,用户可以在测试任务中标记用例测试状态,并查看测试任务的整体进展。



4. AgileTC怎么做的 

架构





AgileTC的核心是测试用例集和测试任务,其中用例集的编辑和任务编辑当前均基于脑图,因此合并为一个平台。最终由三个平台组成:脑图编辑平台、用例集管理平台和测试任务管理平台。以下主要介绍脑图编辑平台。



脑图编辑功能主要由前端实现,采用react框架,包含脑图节点的增加、删除、修改功能,以及脑图样式和布局等。部分脑图基本绘制和布局能力借鉴了百度开源kity的能力。在这些脑图基本能力之上,支持测试常用的标签,如优先级和执行步骤、预期结果,支持测试进展的标记;进行了读写权限隔离,让测试设计和测试执行分开,使测试分工更有序。



多人实时协同采用websocket通信协议。客户端打开用例集或者任务详情,在服务端会创建一个客户端session,并判断当前是否有其他客户端打开相同的用例集或任务,如果有,会触发用例集的落库。客户端修改时,会将变更diff发送到服务端,服务端将diff发送到其他客户端保持实时同步。客户端退出时,会触发自动保存。



5. 环境依赖 

架构



  • mac环境(暂未在windows环境运行)

  • java 1.8

  • mysql 服务端

  • Chrome



下载



从github下载AgileTC源码:https://github.com/didi/AgileTC

git clone https://github.com/didi/AgileTC.git

或者 直接Download ZIP



准备



创建依赖数据库,application-dev.properties中配置数据库名称为case_managercreate database case_manager

利用sql中的脚本配置对应表。创建脚本路径:case-server/sql/case-server.sql

修改application-dev.properties中spring.datasource的配置。默认数据库端口号为3306

安装xmind jar包。mvn install:install-file -Dfile=org.xmind.core_3.5.2.201505201101.jar -DgroupId=com.xmind -DartifactId=sdk-Java -Dversion=201505201101 -Dpackaging=jar



运行



mvn spring-boot:run浏览器打开 http://localhost:8094/case/caseList/1



使用



1. 创建测试集





2. 创建测试集





3. 创建测试任务





4. 编辑测试任务





6. 总结 

AgileTC基于脑图的基本能力,实现了线上化测试用例管理和测试任务管理的能力。读者可以直接使用AgileTC进行用例管理,也可以将其作为组件嵌入项目管理平台,配合项目管理使用。在业务快速迭代的背景下,使用脑图进行测试分析和用例管理,已经越来越流行。而AgileTC作为线上化、测试定制的脑图平台,将进一步提升测试效率,欢迎使用和反馈!



GitHub项目地址

https://github.com/didi/AgileTC

 

开源团队



团队成员皆来自滴滴车服技术团队



团队招聘



滴滴车服资金平台团队负责为车服提供支付、计费、对账、开票、清结算等领域能力,一直致力于提升资金平台准确性、稳定性、可靠性。  团队长期招聘java工程师,欢迎有互联网金融、支付、计费、开票、清结算等领域相关经验,对资金安全有较好的小伙伴加入。



可投递简历到diditech@didiglobal.com,邮件主题请命名为「姓名-应聘部门-应聘方向」。





延伸阅读







内容编辑 | Charlotte

联系我们 | DiDiTech@didiglobal.com





发布于: 2020 年 09 月 24 日 阅读数: 127
用户头像

滴滴技术

关注

还未添加个人签名 2020.06.29 加入

滴滴出行官方技术号

评论

发布
暂无评论
滴滴开源AgileTC:敏捷测试用例管理平台