本文讲述部分洗数据测试方法,在迭代项目中总是能遇到洗数据的测试,洗数据其实会带来很大的风险,但是往往开发人员认为没有业务逻辑,测试人员也无从下手,业务忙的时候,大家都没有特别关注洗数据的测试,这个风险隐患太大了。本文描述几种洗数据的场景和测试方法,仅供大家参考。
洗数据场景:
场景一:从别的服务器的数据表中洗出部分数据到现有表,根据字段关联,形成新表。
场景二:在数据相对较少的情况下,在本表中清洗
场景三:数据量多时,偶尔采用导出数据。这种一般情况要写工具,分批次来进行清洗。
场景四:从老的数据库表清洗到新的同名数据库表,数据库表北京是需要和别的服务同步,接口不变,兼容老师局和新数据。
场景五:多参数映射项目,原来一个批次的参数对应一个id,后需要采薇一个彼此的参数对应多个id。
对于以上的洗数据场景,风险减轻方案有:
1.小面积出现问题:开发提供开通每个权限的内容接口,需要测试改接口的功能
2.大面积出现问题:
1.需要开发提供回滚方案。
2.让开发做业务的降级,降级开关调整调用的逻辑
针对以上场景对测试人员的建议:
场景一:
注意点:总量,抽样,老数据前端显示,新增数据,原有功能影响
1.数据总量是否缺失
2.抽取部分数据验证其他服务表的数据和导入新表的数据是否一样
3.前端页面验证导入的老数据是否显示正确
4.新增数据,查看数据显示
5.原有功能入口是否走了新表,页面功能是否正常。
场景二:
注意点:该案例,由于数据量少,且在本表修改,影响范围较小,测试需要:
1、抽样查看更新后的数据是否修改成功
2、前端页面展示修改后的数据是否显示成功
3、修改后的数据相关联的功能,例如权限,三方调用是否正常。
场景三:
注意点:
1、抽样检验,洗完后的数据是否正确;
2、清洗后的所有用户数据是否正确。
3、功能正确。
4、第三方依赖正确。
5、用户操作的时候,更新,是否影响到用户的
6、边洗边更新,涉及的Redis
场景四:
注意点:出上述注意点外,需要注意
1.第三方依赖功能正常
2.涉及到老接口和新接口需要验证
场景 五:
在上线后,做一次校验,老数据和新的映射表的数据校验,校验是否有数据缺失。
清洗数据需要注意缓存测试:
1、开发清洗数据过程中是否更新了缓存
清洗数据前更新缓存有仍然加载旧数据的可能性。
清洗数据后更新缓存有数据被改回旧数据的可能性。
2、需要清楚开发清洗数据的完整逻辑。方案,脚本
3、脚本确认正确性
4、总量的确认
5、内容的准确性
6、功能的验证
7、对缓存,大数据,es的影响
8、回滚,备案
9、缓存的清洗(Redis,MongoDB,es的更新)
10、es全量更新,异常情况处理,系统发布,导致清洗中断,补偿方案。
11、数据库锁表,更新中断。
12、对三方,业务方的影响
13、洗数据的过程中,字段值被改了,或者映射错误。
14、安全信息的脱敏。