模板学堂丨MeterSphere测试质量大屏

发布于 2022年08月16日

DataEase开源数据可视化分析平台模板市场(https://dataease.io/templates/)于2022年6月正式发布。模板市场旨在为DataEase用户提供专业、美观、拿来即用的仪表板模板,方便用户根据自身的业务需求和使用场景选择对应的仪表板模板,并在优质模板的基础上轻松制作自己的仪表板。

从2022年7月开始,我们将会与您分享当月的精选模板,以及基于该模板的数据展示过程,同时面向广大用户同步DataEase模板市场的上新情况。

8月上新模板

8月上新模板涉及招聘、旅游、房地产交易、广播电视、物业管理、能源管理、气象监测等主题,应用软件大屏模板包含禅道、Redmine和Confluence等应用主题,欢迎大家在DataEase模板市场下载使用。

8月精选模板

本月为大家推荐的精选模板是MeterSphere测试质量大屏。MeterSphere是FIT2CLOUD飞致云旗下的一站式开源持续测试平台,遵循GPL v3开源许可协议,涵盖测试跟踪、接口测试、UI测试和性能测试等功能,全面兼容JMeter、Selenium等主流开源标准,有效助力开发和测试团队充分利用云弹性进行高度可扩展的自动化测试,加速高质量的软件交付。

1. 大屏信息

■ 产品版本号:MeterSphere开源持续测试平台基于v1.20.5版本,DataEase开源数据可视化分析平台基于v1.11.1版本。

2. 大屏展示

模板应用

接下来,为大家讲解如何应用MeterSphere测试质量大屏模板。

1. 模板下载

1.1 内置模板市场

如您所使用的DataEase为v1.13.0及以上的版本,并且DataEase可直接访问到模板市场地址(https://dataease.io/templates/),可通过内嵌的“模板市场”模块在线应用模板。

为仪表板命名并选择放置的目录。

添加成功后会自动进入到新建仪表板的编辑界面。

1.2 在线模板市场

您也可以直接访问DataEase模板市场主页,找到测试质量大屏。模板市场地址为:https://dataease.io/templates/。如需快速检索,可进行关键字搜索或分类切换,可以快速找到想要的大屏模板。

点击“测试质量大屏”仪表板模板进入详情界面。点击“下载”按钮后可将模板下载至本地。

2. 模板导入(内嵌模板市场可以跳过此步骤)

进入DataEase“仪表板”模块,通过下图所示以“导入模板”的方式新建仪表板,点击“上传模板”按钮,选择使用“模板市场”下载的测试质量大屏的模板文件。

导入成功后即可看到下图所示的大屏。

3. 准备数据

当前数据为模板示例数据,需要进一步将数据来源替换为自己环境的MeterSphere数据库,从而展示真实的实时数据。

3.1 新建数据源

首先新建数据源,配置MeterSphere数据库的真实信息,搭建DataEase与MeterSphere之间的数据连接。

3.2 添加相关的数据集

分别创建我们本次演示中需要用到的各类数据集。如果需要展示一些非模板所展示的内容,也可以根据自己需要创建对应的数据集。

此次我们涉及到的有SQL数据集和数据库数据集,在创建时需要分别选择对应的类型。

数据库数据集即直接选择某张数据库表,如下图所示,此次我们模板中需要用到的表分别为:

1. 测试用例表:test_case

2. 用例评审表:test_case_review

3. 缺陷表:issues

除了数据库数据集以外,需要进而创建一些SQL数据集,本次用到以下SQL语句,分别以SQL数据集类型创建好即可。

■ 测试计划平均用时

SELECT ROUND(AVG(( t.actual_end_time - t.actual_start_time )/ (1000*60*60*24) ),2) 测试计划平均用时(天)FROM test_plan tWHERE t.actual_start_time IS NOT NULL AND t.actual_end_time IS NOT NULL; 

■ 测试用例Issue分布(新Issue)

SELECT t1.`name` 测试用例, count( t3.id ) Issue数量FROM test_case t1, test_case_issues t2, issues t3WHERE t1.id = t2.resource_id AND t2.issues_id = t3.id AND t3.`status` = 'new'GROUP BY t1.`name` order BY count( t3.id ) desc; 

■ 测试用例小时分布

SELECT CONVERT(FROM_UNIXTIME ( create_time / 1000, '%k' ) + 8,CHAR) 小时,count(id) 数量FROM test_case where FROM_UNIXTIME ( create_time / 1000, '%Y' )>'2022'GROUP BY ( FROM_UNIXTIME ( create_time / 1000, '%k' ) + 8 ); 

■ 缺陷处理率

SELECT 1-SUM ( IF ( t.`status` = 'new', 1, 0 ))/ count( t.id ) 缺陷处理率 FROM issues t; 

■ 测试计划状态分布

SELECTCASE t.`status` WHEN 'Finished' THEN '已结束' WHEN 'Underway' THEN '进行中' WHEN 'Archived' THEN '已归档' WHEN 'Prepare' THEN '未开始' WHEN 'Completed' THEN '已完成' END 状态, COUNT(id) 数量 FROM test_case_review t GROUP BY t.`status`; 

3.3 添加计算字段

如果需要将一些字段做字典转换处理,可以添加计算字段,例如缺陷表中的status(状态);想要将各个英文状态名映射为中文,可以通过添加计算字段的方式实现。

■ 英文状态名映射为中文

CASE [ STATUS ] WHEN 'new' THEN '新增' WHEN 'resolved' THEN '已处理' WHEN 'closed' THEN'已关闭' END

4. 替换数据

重新进入已导入的仪表板中,进入编辑界面,分别对各个视图的数据集进行替换,即会展示各个视图所用到的数据集及其维度与指标字段。正常情况下,数据集字段一致,替换为自己的数据集后视图会自动匹配字段进来,无需再进行维度与指标字段的配置。

■ 视图:测试计划数

■ 视图:测试计划平均用时天数

■ 视图:测试用例数

■ 视图:测试计划状态分布

■ 视图:测试用例等级分布

由于MeterSphere历史版本变更中存在字段变更情况,该字段下存在部分为空的数据,这里增加了过滤器进行过滤。

■ 视图:用例状态评审

■ 视图:测试用例创建时间分布

■ 视图:测试用例数量走势

这里需要注意将日期显示配置为“年月”。

■ 视图:用例维护人分布

■ 视图:缺陷总数

■ 视图:未处理缺陷数

这里需要过滤一下缺陷状态。

■ 视图:缺陷处理率

■ 视图:未关闭缺陷分布

■ 视图:缺陷数量按月分布

■ 视图:存在未处理缺陷的测试用例(缺陷数)

5. 最终效果

完成上述步骤后,属于自己的MeterSphere测试质量仪表板就大功告成了。如果您有个性化的需求,样式和展示内容还可以根据需要进行相应调整。