测试管理 求助,测试如何保证数据的准确性!!!

DDM · 2022年08月11日 · 最后由 y23y5123 回复于 2022年08月29日 · 10505 次阅读

本人在做一个智慧社区项目的测试,该项目目前已将上线给到用户使用。而本项目的数据底数是有政数局提供,由于数据比较多且比较杂,从而导致数据在融合的过程中,有一部分数据缺失了某些字段,从而导致功能出现了问题。ps:在数据完整的情况下,该功能可以正常使用,没有任何问题。

直到项目上线后,才有用户反馈某个功能不能使用,经过我这边一查作比对,才发现原来是数据问题,结果测试组被喷得一文不值。😢 😢 😢

想求助下,一般面对这种大批量数据的时候,我们要如何去做好这部分的功能测试???

共收到 14 条回复 时间 点赞

我觉得这个体现的是你们的数据迁移没有拿出来讨论过怎么保证质量(不完全是测试的问题)。
关键是点在于:这是否是一个明确下来,很清晰的需求?还是只是开发想当然就去做的迁移想让也没有考虑过迁移的问题,以及数据完整性?
我觉得完整的方案里面,应该包含数据库的设计是否和原来的数据是融合的,比如表结构是否一致或者旧数据能完整地插入到新表? 字段的长度是否一致?编码格式是否一致?迁移的过程是怎么操作的,是否有做过方案演练和回滚演练?数据迁移完成后怎么验证数据的准确性?是否有基于迁移的数据做过对应功能的回归测试?
如果前面这些都没人考虑过,也没有提出来过,而是直接在线上迁移然后等客户报问题,那么这整个方案都是灾难性的,测试组有责任但不应该是主要责任。

导致数据在融合的过程中,有一部分数据缺失了某些字段.---------------这不就是测试点之一么~

这种存在大量历史数据的项目恰好接触过,处理方法是:
1、一轮测试做空库测试,或者开发库进行测试【校验功能和新增数据的业务连贯性】。
2、二轮测试迁移数据测试,用你们政数局提供一个历史迁移库做测试,并且让开发把迁移脚本给你们【测试历史数据能不能兼容现在的业务】并对所有数据 BUG 的修改脚本留下记录。
3、最后上线阶段,开发迁移最新一版本数据的时候校验所有迁移脚本是否遗漏,二轮数据测试的脚本是否被同步。

对融合后的数据做数据质量测试,检查字段有值率,数据量完整性和一致性

ETL 过程一般需要对数据的 完整性、一致性、正确性、规范性进行校验。具体的规则得看你们的业务而定

缺失了一些字段
如果是比较显性的问题,建议增加一个灰度流程,让真实的玩家众测一下

这个其实就是告诉我们,不能相信研发,研发的话可以参考,但是测试得按自己的节奏来,数据迁移的结果从测试角度,思考,其实很容易就可以分出三种情况,数据迁移完善,数据迁移失败,数据迁移部分成功,然后再考虑怎么判定数据迁移不成功就行了。然后就比较容易发现问题了。
另一个就是接口的问题了,这个功能对应的接口测试不够充分,入参不完整的情况下,接口测试不充分,上线后发现 bug,发现是测试不充分导致的,测试确实要背锅,无可厚非的

测试环境要考虑到这种情况,如何就是生产环境有数据后做回归测试,至少也是测试先发现的问题

融合完测试一遍你的这些问题

而本项目的数据底数是有政数局提供,由于数据比较多且比较杂,从而导致数据在融合的过程中,有一部分数据缺失了某些字段,

当实际使用时,会有外部引入数据的时候,就要特别关注下外部引入数据的数据质量,并对其进行适配/修复了。你应该是只关注了功能质量,遗漏了关注数据质量。

涉及老数据迁移、外部数据输入的,都需要关注好数据质量。哪些字段一定有,哪些字段可能缺失,哪些字段可能有多种数据结构,都必须很明确,并且确保程序有做对应的适配。这部分正常应该在技术方案评审的阶段,稍微以终为始一下,过一下预计上线流程,就可以发现。

@ 蟹黄小龙宝 #3 楼 的回复比较清楚了,楼主的事后复盘建议:

1、站在测试角度,目前是哪个环节出了问题,如测试流程或方法或其他,如方法上:只关注了功能,没关注数据融合的正确性,或关注了没关注全,是测试方法上存在问题,那么固化有效的方法,规避同样的问题二次踩坑
2、往前看,在开发设计的哪个环节可以得到控制,需要怎样做,测试可以推动做些什么

没有数据口径的验证,就增加数据测试就好了。

无所谓,混一天是一天,一个月几万块,玩命啊

如果没有设计评审的话,开发也有一定的责任

需要 登录 后方可回复, 如果你还没有账号请点击这里 注册