首页 > 其他分享 >QA团队基于DataLeap开放平台能力的数据测试实践

QA团队基于DataLeap开放平台能力的数据测试实践

时间:2023-12-25 14:57:47浏览次数:38  
标签:数据测试 管控 流程 开放平台 QA Step 测试 高风险

背景 &痛点

随着生态体系扩展和业务发展,数据在业务中承担的决策场景越来越多样化,一部分数据已应用在资损、高客诉等高风险场景,因此对数据质量的要求,尤其是高风险场景的质量要求非常之高。但在保障过程中往往面临以下痛点:

  1. 无标准化流程,管控能力较弱

  • 研发 QA 人力比高达 20:1,因此 QA 采用分级保障策略,QA 人力向高风险需求、资产变更倾斜,但是各业务对分级保障流程各有定义,且落地方式多为线下沟通人工约束,缺少标准化流程;

  • 基于需求的研发测试在风险识别、提测内容、QA 测试等环节依赖人工判断和互相通知,有高风险需求遗漏出错的风险;资产的变更管控策略各有不同,复查人随意可选,且复查人判断的依据只有 CodeRview 信息,整体来看管控能力较弱。

  1. 测试过程低效,测试管理杂乱

  • 研发自测、QA 测试过程多为手动写 sql 模式,效率低下且测试过程分散,需要在等多个平台操作切换,缺乏一站式的测试工具;

  • 测试用例设计多为个人经验,分散在各个测试报告中,无统一的用例管理;各业务测试报告各有不同,大多按照研发、QA 的个人经验输出,可读性不高,缺乏统一的测试管理。

解法

方案

流程标准化

整体设计

DataLeap 开放平台支持用户自定义扩展程序能力,扩展程序可以订阅 DataLeap 侧 OpenEvent 监听用户操作、通过 OpenAPI 与 DataLeap 开放平台进行丰富的交互实现用户行为管控;还提供将 N 个扩展程序以流水线的形式编排的能力。基于此,QA 测试环节以扩展程序「摩斯数据测试」落地,并且通过流水线的能力接入:

  1. 研发测试流程

  • 使用前:人工约束,需求和资产变更的研发测试流程靠人判断、登记、通知、协同;

    使用后:全自动化的分级保障,从开发、自测、QA 测试、发布过程全自动化模式。

  1. 管控能力

  • 使用前:人工判断管控粒度;

    使用后:拓展程序自动决策管控粒度,通过对项目管理平台(meego)需求、任务的风险识别,自动判断管控分级策略,分为 QA 测试的强管控和研发自测 QA 验收的弱管控。

风险识别

「摩斯数据测试」拓展程序接入流水线可实现研发测试流程自动化和管控分级,但是对强弱管控的判断依据,如何比人工判断精准度更高?这就是接下来要思考的如何做风险识别?我们围绕「新增风险」和「存量风险」,设计以下风险识别规则:

  • 新增风险:基于 Dataops 中需求管理功能的设定,所有变更的风险都来源于项目管理平台,我们把项目管理平台信息抽象成代码可识别的规则项;

  • 存量风险:围绕「资产」从质量角度对资产分级打标、风险盘点,并把任务标签、当前风险项、历史风险等作为代码可识别的规则项,作为风险识别的依据之一。

测试平台化

架构设计

从全流程测试管理能力要求出发,我们把测试过程总结为以下几个部分:

Step 1 :测试准入,提测内容,冒烟测试

Step 2:测试过程,case 生成、单元测试,集成测试,回归测试

Step 3:测试准出,测试报告,影响面评估

Step 4:上线保障,case 转监控

基于这个过程,「摩斯数据测试平台」架构设计如下:

 

落地实现

「摩斯数据测试平台」1.0 版本已上线,基本实现了 QA 测试全过程的自动化能力,目前落地实现效果如下:

 

业务案例

背景

以 QA 团队在某直播业务中参与质量保障过程为例,QA 同学面临高风险需求多、高风险资产多、变更频次多的情况,以 2023 Q3 为例,高风险需求 55+个,高风险资产 296+个(占比 2.6%),变更次数 503+次;QA 同学面临如何保障高风险变更可管控无遗漏,同时又解决 QA 人力负载高测试成本高的问题?

应用 

Step 1 :基于项目管理平台、任务的高风险标签流程落地

高风险标签流程:

  • 项目管理平台要求业务提需时明确高风险场景,规范项目管理平台标签

  • 直播任务标签,由 QA 统一推进,落地「资损」「高客诉」标签 

Step 2: 协同研发,共建流水线流程

直播数仓流水线采用分级管控的策略,QA 节点对变更任务全面覆盖:

  • D1~D3 任务,调试管控,提交管控 codeCT/自测检查/ QA 测试

  • D4 D5 任务快速发布,提交管控 codeCT/QA 测试

Step 3:明确高风险规则,明确 QA 触达规则

  1. 高风险规则的自定义配置:

项目管理平台需求高风险标签

  • 命中风险标签,均走流水线 QA 测试管控

  • 未命中强管控规则,自动快速跳过

任务高风险标签

  • 发布变更管控,使用发布复查能力,QA 参与变更复查 

  1. QA 触达规则:明确 QA 接口人信息

同一需求任务变更过程,包括提测、修复信息全部集成流水线、机器人触达消息到指定 QA 同学

Step 4:研发团队宣讲流程,推进落地;QA 团队落地使用,助力测试提效

  1. QA 同学在直播数仓方向多个小组宣讲,推进基于流水线能力的研发测试流程落地

  2. 直播 QA 同学的测试过程由线下转向平台,节省了编写 case、case 执行、报告编写、监控配置的人工执行过程,对测试效率提升有一定帮助

收益和规划

基于扩展程序的「摩斯数据测试」1.0 版本在 7 月初上线以来,已初步具备流程标准化、测试平台化能力;截止 8 月底平台已覆盖了 DataLeap 8 个项目空间,1334 个任务管控,QA 强管控 470 例,自动转监控 380 例,粗略统计目前已经在测试过程节省 QA 同学约 30%的人力投入。 

未来将围绕平台的稳定性建设,实时数据测试的支持能力,基于通用经验、语义分析和代码契约智能生成测试场景等能力等继续推进,未来向测试智能化发展。

 

 

点击跳转 大数据研发套件DataLeap 了解更多

标签:数据测试,管控,流程,开放平台,QA,Step,测试,高风险
From: https://www.cnblogs.com/bytedata/p/17926080.html

相关文章

  • 自然语言处理:通过API调用各大公司的机器翻译开放平台
    国内大公司做机器翻译做的比较好的有讯飞和百度,这里给出这两个公司机器翻译的开放平台API的介绍:讯飞开放平台:链接:https://www.xfyun.cn/doc/nlp/xftrans_new/API.html#%E6%8E%A5%E5%8F%A3%E8%AF%B4%E6%98%8E百度翻译平台:链接:https://api.fanyi.baidu.com/doc/21......
  • 解决Qt6“QApplication file not found”和“无法运行 rc.exe”错误
    最近开始学习Qt(趟坑),买了一本《C++GUIQt4编程》,照着书上的例子做,第一个就报编译不过,报错信息:'QApplication'filenotfound 查了下Qt助手, 使用qmake,需要加一句:QT+=widgets原因在于QApplication在Qt6中被放在了QtWidgets下,因此需包含widgets,当然最好的方式是根据Qt版本......
  • 客服系统接入抖音授权登录-在线客服接入抖音开放平台登录授权
    抖音授权简介抖音登录是基于OAuth2.0协议标准构建的授权登录系统。抖音OAuth2.0授权登录让用户安全登录接入的第三方应用或网站,在抖音用户授权登录已接入抖音OAuth2.0的第三方应用或网站后,第三方可以获取到用户的接口调用凭证(access_token),通过该凭证可以实现获取......
  • 深度学习面试常用代码:MHA/MQA/GQA/LN/BN/位置编码代码
    深度学习常用代码参考:https://zhuanlan.zhihu.com/p/6505754261.MHA(MultiHeadAttention)代码实现#1.MHA实现importtorchimporttorch.nnasnnimporttorch.nn.functionalasFclassScaleDotProductAttention(nn.Module):def__init__(self,):......
  • QToolBar右侧添加QAction
    使用QToolBar的addWidget,添加一个可伸缩的空QWidget//Action放右侧:使用QToolBar的addWidget,添加一个可伸缩的空QWidget。QWidget*spacer=newQWidget;spacer->setSizePolicy(QSizePolicy::Expanding,QSizePolicy::Expanding);ui->toolBar->addWidget(spacer);//之后的QActi......
  • 适用于广泛的物联网应用RM500QAEAA-M20-SGASA、EG25GGB-MINIPCIE、EM06ELA-512-SGAS网
    1、RM500QAEAA-M20-SGASA是一款5Gsub-6GHzM.2模块,尺寸为52.0mm×30.0mm×2.3mm,符合3GPPRelease15规范,针对工业和商业物联网及eMBB应用进行了优化。它支持独立(SA)和非独立(NSA)模式,最大下行链路速率为2.5Gbps,最大上行链路速率为900Mbps。RM500QAEAA-M20-SGASA支持Q......
  • NLP QA数据集
    NLPQA数据集数据文档背景描述CNN/DailyMail(简称CNN/DM)作为单文本摘要语料库,每篇摘要包含多个摘要句。数据集最初是从美国有限新闻网(CNN)和每日邮报网(DailyMail)收集的约100万条新闻数据作为机器阅读理解语料库。后来进行简单改动,形成用于单文本生成式摘要的语料库。将每篇......
  • 2、python脚本采集温州市数据开放平台数据
    1、采集网址url:https://data.wenzhou.gov.cn/jdop_front/index.do需求:获取数据资源-数据来源单位(龙湾区50)的信息具体要获取的信息如下:名称、摘要、更新、数源单位、地址、联系方式、数据领域、访问次数、下载次数、更新日期、发布日期、数据量。 2、浏览器审查页面返回的数......
  • Neo4j+Langchain实现非结构化知识图谱增强QA
    微信公众号的一篇文章,着重介绍如何使用知识图谱来增强大语言模型QA的问答效果1.核心架构核心架构如下:可以通过Neo4j的向量索引和Neoconj图数据的强大能力来实现检索增强的生成系统,提供精确且上下文丰富的答案。两条路:向量相似性搜索来检索非结构化信息,访问图数据库来提取......
  • ../include/randseqaccess.hh:21:29: fatal error: mysql++/mysql++.h: No such file
     001、make编译报错:../include/randseqaccess.hh:21:29:fatalerror:mysql++/mysql++.h:Nosuchfileordirectory 002、解决方法:。 ......