2026-08-06 16:33:45 +08:00
|
|
|
|
# testdata
|
|
|
|
|
|
|
|
|
|
|
|
自动化测试用的**脱敏小样本**放这里,**要提交进 Git**。
|
|
|
|
|
|
否则别人拉下仓库跑 `go test ./...` 会失败。
|
|
|
|
|
|
|
2026-08-08 09:57:12 +08:00
|
|
|
|
## 蝦皮 Excel 导入测试(工单 #38)
|
2026-08-06 16:33:45 +08:00
|
|
|
|
|
2026-08-08 09:57:12 +08:00
|
|
|
|
**没有提交静态的 `shopee_sample.xlsx`。** 固件改成用 `excelize` 在
|
|
|
|
|
|
`admin/service/shopee_import_test.go` 里现造(见 `buildShopeeWorkbook`),
|
|
|
|
|
|
测试跑到时临时生成、测试结束自动清理。
|
2026-08-06 16:33:45 +08:00
|
|
|
|
|
2026-08-08 09:57:12 +08:00
|
|
|
|
选择现造而不是提交一个二进制文件的原因:xlsx 是二进制格式,PR 里看不出
|
|
|
|
|
|
改了什么,审查只能"信任"文件内容;现造的话,固件长什么样直接写在
|
|
|
|
|
|
测试代码里,一眼能看到覆盖了哪些场景。
|
2026-08-06 16:33:45 +08:00
|
|
|
|
|
2026-08-08 09:57:12 +08:00
|
|
|
|
覆盖的场景(对应工单 #38 的要求):
|
2026-08-06 16:33:45 +08:00
|
|
|
|
|
2026-08-08 09:57:12 +08:00
|
|
|
|
- 商品汇总行(`商品規格ID` 是 `-`);
|
|
|
|
|
|
- SKU 行,规格原文用**带【】**的格式,如 `黑色,M【建議40-50公斤】`;
|
|
|
|
|
|
- SKU 行,规格原文用**空格分隔**的格式,如 `卡其色拼黑色,L 建議50-57.5kg`;
|
|
|
|
|
|
- SKU 行,只有颜色和尺码、没有建议,如 `黑色,M`;
|
|
|
|
|
|
- 颜色自己也带【】的格式,如 `黑色 【夏裝單件T恤】,L 【57.5/70公斤】`;
|
|
|
|
|
|
- 括号不配对的脏数据(真实样本里的 21~23 行),验证 `parse_ok=0`
|
|
|
|
|
|
且不瞎猜;
|
|
|
|
|
|
- 表头缺列、sheet 名不对;
|
|
|
|
|
|
- 已有人工填的 `pdd_goods_url` / `pdd_goods_id`,验证导入不覆盖;
|
|
|
|
|
|
- 已有 `is_manual = 1` 的人工新增 SKU,验证导入不删除;
|
|
|
|
|
|
- 同一个文件导入两次,验证不产生重复行。
|
2026-08-06 16:33:45 +08:00
|
|
|
|
|
2026-08-08 09:57:12 +08:00
|
|
|
|
真实样本 `raw_data/蝦皮数据样本.xlsx`(需向项目负责人索取,
|
|
|
|
|
|
含商业数据,已在 `.gitignore` 里排除)仍然用于**人工验证**,
|
|
|
|
|
|
不用于自动化测试——1.9MB,每次跑测试都读一遍太慢。
|
2026-08-06 16:33:45 +08:00
|
|
|
|
|
|
|
|
|
|
相关规定见 `docs/admin/06-quality-security.md` §2.1。
|