号码数据去重软件 最容易“演示过关、上线翻车”。原因很具体:验收时用的是 20 个干净的国内 11 位号,真实文件却是多 sheet、GBK 编码、英国本地号、被 Excel 改成 1.38E+10 的单元格。软件功能可以按 必须自己做的模块 来建,但没有样本,模块等于没测。
下面这份清单按“一定要让软件露出问题”来写,不是按功能说明书复述。
样本不是越多越好,是类型要齐
准备 6 个小文件就够,每个几十到几百行。不要一上来丢 50 万行——那测的是性能,不是正确性。正确性过了再加压。
1. 国内号混写包
同一号至少出现这些写法:
13800138000138 0013 8000+86-138-0013-80008613800138000008613800138000
期望:规范化后是同一键,文件内去重只留一条通过(或一条通过 + 若干文件内重复),不能 5 条都当新号。
2. 默认地区包
故意不写国家码,让任务默认地区分别设成 CN 和 GB 跑两遍。同一串 07700900123:
- 默认英国时,应能收到
+447700900123一类键 - 默认中国时,应进格式异常,而不是收成一个不存在的国内号
默认地区是任务参数。测的就是有没有把它写死在全局配置里。全球规则细节见 全球号码去重系统。
3. Excel 破坏包
用 Excel 打开、保存一次再上传,专门制造:
- 长数字变成科学计数法
- 前导 0 丢失
- 有的列被当成日期
- csv 用 GBK 另存,中文表头乱码
期望:这些行进“格式异常”,并在原因里写得出是解析问题。若软件静默写成错误数字再入库,底库会被污染,以后很难洗。
4. 探针重复包
先往底库导入 10 个已知号(标记来源 probe)。再上传一份含这 10 个号的新文件,夹在正常新号中间。
期望:10 个打上历史重复,且能看出命中的是探针批次,而不是“重复”两个字了事。这直接测 号码数据库系统 有没有来源,而不只是一个 unique 集合。
5. 脏文件包
- 两个 sheet,号码在第二个
- 表头在第 3 行
- 一列空号码、一列备注里也像号码
- 同一文件连传两次
期望:能选 sheet 和表头行;空号进异常;第二次上传应识别文件哈希或明确变成新任务,而不是 silently 把库写双份。
6. 权限负例
用非管理员账号尝试:
- 下载底库
- 导出别人的任务
- 改规则或默认地区
这些操作必须失败。功能演示过、权限没测,不算验收通过。
还要测流程,不只测结果对错
正确性之外,三件事常被跳过:
失败续跑。 处理到一半杀进程。重跑后不应出现重复键报错,也不应把失败任务标成成功。任务状态机见 手机号码批量去重。
规则版本。 用 v1 规则跑完一批,改规则后再跑同一文件,旧任务的结果应仍按 v1 可回看。否则审计没有意义。
导出字段。 把导出丢进你们真实的 CRM 或外呼模板看一眼。缺规范化号、缺原值、缺状态,业务会再手改一次,等于软件没嵌入工序。
不要用这些方式验收
- 只看“处理了多少条、耗时多少秒”
- 只比对行数:删掉 200 行就认为对了,不知道删的是不是该删的
- 用生产客户名单当测试数据
- 让开发自己点自己的页面,没有业务在场
速度数字在键和异常都稳定之后再采。否则你优化的是错误路径。慢在哪,见 号码快速去重软件为什么慢。
验收记录建议怎么留
每份样本留一张表:文件名、期望通过/重复/异常的大致数量、实际数量、不一致的 5 个例子、规则版本、操作账号。上线后规则一改,还能拿同一包回归。
这比写一百页说明书有用。
常见问题
样本里要不要放空号、停机号?
验收去重软件时不必。空号检测是另一条链路,依赖外部数据。把空号和重复混在同一验收里,失败了说不清是谁的责任。区别见 号码去重和号码清洗。
外包验收时最该盯哪一项?
探针号 + Excel 破坏包。这两项不过,其它页面都是装饰。
有没有现成环境可以先对照?
有。在线 Demo 用脱敏样本走导入和三类结果。正式验收应在你们自己的库和环境做。开通部署:Telegram @imchat。