数据处理类系统功能测试方法

数据处理类系统功能测试方法

信息技术的广泛应用使得企业生产经营变得更加高效,同时也沉淀了大量的数据。随着大数据、数据挖掘、人工智能等技术的快速发展,企业愈加重视数据资产的价值,将数据中隐藏的信息与规律转化为企业的生产力,使数据成为企业的决策依据。

当前,数据应用能力已成为企业的核心竞争力,支撑经营决策、客户营销、产品创新、绩效管理、风险管控、监管报送及信息披露等诸多场景。因此,各企业积极打造从数据采集、汇总、处理加工至应用的闭环,建设大数据平台、数据仓库、数据集市、数据湖等各种形式的“数据中台”,实现海量数据的快速聚集汇总与处理加工,为企业发展增速提供动力。

数据处理类系统是指根据业务目标与需求对数据进行汇集、拼接、整合、统计、加工等直接处理的纯后台系统,例如大数据平台、数据仓库、数据集市、数据湖等。此类项目无前台界面,多为批量程序,由调度系统控制定期运行,处理结果以及数据文件或数据库表等形式存储,供下游应用使用。

数据是数据应用的基础,数据质量对于数据应用至关重要,数据处理类系统是数据质量的重要影响因素,测试作为系统质量保障的最后一道防线,面对繁杂海量的数据加工规则需求,如何在有限资源的条件下兼顾测试质量与测试效率值得探讨。

本文根据过往项目经验整理了一套数据处理类系统的功能测试方法,对其中重要的目标表检查进行详细梳理,根据检查点来源将目标表检查内容分为了技术层面与业务层面,建议测试人员按照从技术层面到业务层面、从简单到复杂、从宏观到微观的测试执行策略。

一、数据处理类系统功能测试

目前数据处理类系统常用的功能测试方法主要有两类:

一是白盒测试,主要使用代码检查方法,由测试人员根据业务需求对系统批量程序的代码或脚本进行检查,较容易发现一些直观的问题,比如判断条件中的比较符号写反、判断条件的遗漏、边界值的遗漏等。此外,代码检查有助于加深测试人员对数据处理功能的理解,进行黑盒测试案例设计时更有针对性。

二是黑盒测试,即运行批量程序,在运行过程中检查是否出现报错信息与中断,运行结束后对生成的数据表或数据文件,即目标表检查。目标表检查是数据处理类系统测试最主要的内容,通过检查间接验证系统实现的加工逻辑是否正确满足业务需求。目标表检查一般是通过编写 SQL 语句查询的方式实现。

本文根据检查点的来源将此部分内容分为技术层面和业务层面,详细阐述如下。

(一)技术层面检查内容

技术层面检查内容主要是对“接口”格式的检查。数据处理类系统的处理结果供下游应用使用,可以视作与下游系统的“接口”,因此最基本的要求是满足系统间“接口”格式约定以及因约定导致的技术约束。具体检查内容包括:

(1)目标表齐全,表名与约定一致;

(2)目标表字段齐全,字段名、字段类型、长度精度等属性与约定一致;

(3)目标表主键设置与约定一致,以及由此导致的技术约束即不存在主键重复的记录、不存在主键字段为空值的记录;

(4)时间拉链与约定一致,以及由此导致的技术约束即时间拉链不存在断链、倒链和交叉链。这部分测试内容执行简单,容易发现错误,且错误的影响范围广。

(二)业务层面检查内容

业务层面检查内容是根据业务规则与业务经验设计的检查,可以分为两部分:

一是对根据业务规则与经验得到的简单业务约束的检查

具体包括:

(1)目标表记录数的数量级是否与业务经验一致,例如客户信息表的记录数大致与企业客户约十万人一致;

(2)目标表字段的空值比例满足业务预期,例如客户编号、交易金额等字段空值比例为 0,客户地址字段空值比例小于 50%;

(3)目标表字段的默认值比例满足预期,例如客户学历字段默认值为初中,业务预期客户学历为初中的记录数占比小于 30%;

(4)目标表字段数据取值范围是否合理,数值型字段的最小值、最大值在业务预期范围内,如取款金额满足预期取值范围(0,50000],离散型字段的取值符合业务规定,简单的如客户性别、客户学历、年龄段等,复杂的如客户标签、产品标签等,文本型字段的字符串格式符合业务规定,如贵宾客户编号以 VIP 开头、时间字段满足YYYY-MM-DD-HH;

(5)字段间简单的业务逻辑关系是否满足,例如开始时间早于结束时间、持有产品总数等于各类产品持有数之和。对简单业务约束的测试结果与测试数据密不可分,建议使用脱敏的历史数据,但需注意脱敏时不破坏数据的有效性。

二是对具体加工规则的检查

即测试人员根据具体加工规则,对输入数据处理类系统的源数据进行计算,获得正确计算结果,与目标表进行比对。对于记录数较少的目标表可以进行全表核对,对于记录数较多的目标表可以进行表级汇总属性核对,例如表记录数是否一致、数值型字段的表级加总值是否一致、离散型字段的分布比例是否一致等,进一步抽取部分记录进行核对,抽样时可根据等价类划分法、边界值法等有针对性的抽取。

例如功能需求为汇总统计各子机构的A产品营销额,可先测试汇总后目标表记录数是否于子机构数量一致、目标表A产品营销额总计字段的表级加总值是否与A产品总营销额一致,测试通过后进一步从目标表中抽取小部分样本测试对应子机构的A产品营销额是否计算正确。

二、测试执行策略

在执行测试时可以按照从技术层面到业务层面、从简单到复杂、从宏观到微观的测试执行策略。技术层面的测试内容执行较简单耗时短,容易发现影响范围广的错误,例如批量程序执行后发现缺失某张目标表,即可说明批量程序存在问题,反馈开发人员进行排查并修复,无需进行业务层面的测试。从简单到复杂是指先进行简单业务约束的检查,进而执行具体复杂业务规则的检查。从宏观到微观,在具体业务规则检查中先执行表记录数、表级加总值等表级属性的核对,再抽样核对具体记录。

三、总结

上面介绍了一套数据处理类系统的功能测试方法,通过项目经验,将目标表检查内容分为技术层面与业务层面,其中技术层面主要进行接口格式以及主键约束、外键约束等技术约束的检查,业务层面主要进行取值范围、逻辑关系、加工规则等业务约束的检查。测试人员可遵循从技术层面到业务层面、从简单到复杂、从宏观到微观的测试执行策略,避免遗漏测试点,同时耗费最小代价尽可能多的发现缺陷,从而极大提高测试质量与测试效率。

玻璃钢生产厂家张掖玻璃钢机械外壳厂家直销武汉玻璃钢公仔雕塑厂家庆阳玻璃钢装饰工程公司莆田商业美陈生产厂家保山玻璃钢茶几加工海南玻璃钢家具多少钱朔州玻璃钢垃圾桶厂普洱玻璃钢人物雕塑徐州不锈钢家具厂随州玻璃钢医疗外壳定制新乡玻璃钢卡通雕塑沈阳不锈钢家具哪家好南京玻璃钢座椅公司广州玻璃钢产品天水玻璃钢设备外壳哪家好绍兴玻璃钢树池厂家直销云南玻璃钢摆件加工钦州玻璃钢树池坐凳多少钱常德玻璃钢茶几生产厂家厦门玻璃钢公仔雕塑制造江苏玻璃钢天花吊顶多少钱廊坊玻璃钢花槽制造菏泽玻璃钢浮雕哪家好拉萨玻璃钢公仔雕塑厂武威玻璃钢种植池定制吉安玻璃钢人物雕塑哪家好随州玻璃钢花盆生产厂家大庆玻璃钢医疗外壳价格鹤岗玻璃钢外壳制作河源玻璃钢花池公司香港通过《维护国家安全条例》两大学生合买彩票中奖一人不认账让美丽中国“从细节出发”19岁小伙救下5人后溺亡 多方发声单亲妈妈陷入热恋 14岁儿子报警汪小菲曝离婚始末遭遇山火的松茸之乡雅江山火三名扑火人员牺牲系谣言何赛飞追着代拍打萧美琴窜访捷克 外交部回应卫健委通报少年有偿捐血浆16次猝死手机成瘾是影响睡眠质量重要因素高校汽车撞人致3死16伤 司机系学生315晚会后胖东来又人满为患了小米汽车超级工厂正式揭幕中国拥有亿元资产的家庭达13.3万户周杰伦一审败诉网易男孩8年未见母亲被告知被遗忘许家印被限制高消费饲养员用铁锨驱打大熊猫被辞退男子被猫抓伤后确诊“猫抓病”特朗普无法缴纳4.54亿美元罚金倪萍分享减重40斤方法联合利华开始重组张家界的山上“长”满了韩国人?张立群任西安交通大学校长杨倩无缘巴黎奥运“重生之我在北大当嫡校长”黑马情侣提车了专访95后高颜值猪保姆考生莫言也上北大硕士复试名单了网友洛杉矶偶遇贾玲专家建议不必谈骨泥色变沉迷短剧的人就像掉进了杀猪盘奥巴马现身唐宁街 黑色着装引猜测七年后宇文玥被薅头发捞上岸事业单位女子向同事水杯投不明物质凯特王妃现身!外出购物视频曝光河南驻马店通报西平中学跳楼事件王树国卸任西安交大校长 师生送别恒大被罚41.75亿到底怎么缴男子被流浪猫绊倒 投喂者赔24万房客欠租失踪 房东直发愁西双版纳热带植物园回应蜉蝣大爆发钱人豪晒法院裁定实锤抄袭外国人感慨凌晨的中国很安全胖东来员工每周单休无小长假白宫:哈马斯三号人物被杀测试车高速逃费 小米:已补缴老人退休金被冒领16年 金额超20万

玻璃钢生产厂家 XML地图 TXT地图 虚拟主机 SEO 网站制作 网站优化