testdata
自动化测试用的脱敏小样本放这里,要提交进 Git。
否则别人拉下仓库跑 go test ./... 会失败。
蝦皮 Excel 导入测试(工单 #38)
没有提交静态的 shopee_sample.xlsx。 固件改成用 excelize 在
admin/service/shopee_import_test.go 里现造(见 buildShopeeWorkbook),
测试跑到时临时生成、测试结束自动清理。
选择现造而不是提交一个二进制文件的原因:xlsx 是二进制格式,PR 里看不出 改了什么,审查只能"信任"文件内容;现造的话,固件长什么样直接写在 测试代码里,一眼能看到覆盖了哪些场景。
覆盖的场景(对应工单 #38 的要求):
- 商品汇总行(
商品規格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,验证导入不删除; - 同一个文件导入两次,验证不产生重复行。
真实样本 raw_data/蝦皮数据样本.xlsx(需向项目负责人索取,
含商业数据,已在 .gitignore 里排除)仍然用于人工验证,
不用于自动化测试——1.9MB,每次跑测试都读一遍太慢。
相关规定见 docs/admin/06-quality-security.md §2.1。