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

Posted 思否编辑部

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了滴滴开源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/Agile...

或者 直接Download ZIP

▍准备

  • 创建依赖数据库,application-dev.properties中配置数据库名称为case_manager
    create 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

以上是关于滴滴开源AgileTC:敏捷测试用例管理平台的主要内容,如果未能解决你的问题,请参考以下文章

itest(爱测试) 3.3.5 发布,开源敏捷测试管理 & BUG 跟踪管理软件

itest(爱测试) 4.1.5 发布,开源BUG 跟踪管理 & 敏捷测试管理软件

itest(爱测试) 4.4.0 发布,开源BUG 跟踪管理 & 敏捷测试管理软件

测试管理工具都有哪些?

itest(爱测试) 3.5.0 发布,开源BUG 跟踪管理& 敏捷测试管理软件

使用脚本同步MeterSphere开源持续测试平台与Jira的工单状态