AI 测试提效-Excel/CSV 导入 0 条:先查表头,再查编码
- 2026-11-09 02:02:40

文件明明有 200 行,导入结果却是 0 条
批量导入用例时,最常见的故障不是「导入报错」,而是导入了,但一条都没进去。
页面返回成功,用例列表还是空的;或者弹出一句「没有解析到测试用例」,而文件在自己电脑上打开得好好的。这时候最浪费时间的做法,是反复改文件格式再重传——先搞清楚解析器到底在找哪几个列名。
这篇按排查顺序讲:表头、标题列、工作表、编码、大小。前三个能解决八成的「0 条」。
一、导入器只认这几件事
先明确边界,很多问题在这张表里就能对上号:
.xlsx.xls、.csv | |
注意「只读第一个工作表」这条。很多人把数据放在第二个 sheet,第一个 sheet 留了个说明页——导入器打开第一个 sheet,看到没有标题列,直接返回 0 条。
二、表头:列名是唯一的入口
解析器不是按列的位置取值,而是按列的名字取值。名字对不上,那一列就等于不存在。

图 1:标准列名只是其中一种写法,右侧是同样能识别的别名
几个关键列的可接受别名:
CSV 的识别范围更宽一些:标题还能叫「用例名称」「名称」「测试项」「测试名称」「功能点」「用例ID」,描述还能叫「描述」「用例描述」「Description」,步骤还能叫「操作步骤」「测试步骤说明」「执行步骤」。Excel 和 CSV 的别名表并不完全相同,同一份表格另存为另一种格式后结果不一样,原因往往在这里。
还有一条容易忽略:只有标题是必需的。没有前置条件、没有步骤、没有预期结果,用例照样会被创建,只是那几项为空。所以「导入成功但内容残缺」通常不是解析失败,是列名只对上了一部分。
三、0 条的四种形态
同样是「0 条」,原因和处理方式完全不同:
第三种最隐蔽:没有任何数据行时,解析器不会报错,因为「没有数据」和「没有匹配到字段」是两回事。前者返回空列表,后者才抛「没有解析到测试用例」。
第四种在 Excel 里极常见。判断方法很简单:把文件用「另存为 CSV」导出一遍,看导出的内容是不是第一个 sheet——CSV 只能存一个表,导出的就是解析器会读的那一个。

图 2:先分型再排查,报错和不报错走两条路
四、行被静默跳过
比「0 条」更危险的是「少了几条」。
解析器逐行处理,标题为空的行会被直接跳过,不报错、不提示。常见的触发场景:
• 用空行分隔不同模块; • 标题用了合并单元格,只有第一行有值; • 标题列是公式,导出时没有计算值。
导入之后一定要核对条数:文件里有多少个非空标题行,就应该导入多少条。对不上时,先按标题列排序,空值会聚到一起,一眼就能看见。
五、步骤怎么切,决定了内容完整不完整
测试步骤是一列文本,解析时按分隔符拆成多条:
1. 先看有没有分号 ;,有就按分号切;2. 没有分号再看有没有换行,有就按换行切; 3. 都没有,就把整列当成一条步骤。
CSV 还多一条:没有分号也没有换行时,会再尝试按逗号切。Excel 没有这条逗号分支。
这带来两个坑:
• 步骤正文里本身含有分号(比如代码片段、参数列表),会被切成两条; • Excel 里用 Alt+Enter 换的行,导出后可能是换行,也可能是一个空格,取决于保存方式。
更稳的写法是用「步骤1、步骤2、步骤3」多列,解析器支持连续读取这些列。列名不连续就停——中间缺一个「步骤2」,「步骤3」不会被读到。
六、编码:先确认表头有没有变成乱码
CSV 的读取逻辑是:先按 UTF-8 读,失败再按 GBK 读。
这里有个容易被忽略的事实:在 Node 里,用 UTF-8 读一个 GBK 文件通常不会抛错,非法字节会被替换成 �,而不是抛异常。也就是说,回退到 GBK 的那条分支,在很多情况下根本不会触发。
结果就是:表头变成了「鐢ㄤ緥鏍囬」这类乱码,别名一个都匹配不上,最后报「没有解析到测试用例」。你去查表头,看到的是一堆问号或方块;你去查编码,才发现文件根本不是 UTF-8。
处理方式很直接,二选一:
• 用 Excel 的「另存为 → CSV UTF-8(逗号分隔)」重新导出; • 或者干脆存成 .xlsx,Excel 格式自带编码信息,不经过这条文本解码路径。
判断顺序上,编码应该排在表头之后。先看表头是不是你写的那些字,再看它为什么不是你写的那些字——乱码是编码问题,错字是命名问题,两者改法不同。
七、可照做清单
1. 导入前先下载平台模板,用模板的列名,不要自己起名; 2. 数据放第一个工作表,前面不要加说明页; 3. 标题列必须逐行有值,不要用合并单元格; 4. 导入后核对条数 = 非空标题行数; 5. 步骤里有分号时,改用「步骤1、步骤2」多列,别让解析器替你猜; 6. CSV 有乱码就重存为 CSV UTF-8,或者直接传 .xlsx;7. 看到「0 条」先分型:报错还是不报错,决定你是去查表头还是去查数据行。
导入失败很少是「文件坏了」,多数是解析器和你的表格对同一个词的理解不一样。把列名、工作表、编码这三件事对齐,剩下的就是核对条数。
如果这篇对你有用,欢迎转给正在批量导入用例的同事。
也欢迎在公众号后台留言,或发邮件到 clzc_ai2026@qq.com 交流。