测试工程师用 AI 写命令行命令:提示词与命令示例
作为负责功能测试、接口测试和回归测试的 QA,你可能也有同感:需求变化快,测试用例、缺陷报告和测试报告要反复写,边界场景还容易漏。命令行效率高,但参数难记,一个写错的命令还可能造成不可挽回的后果。这篇文章用一个完整的例子演示测试工程师如何借助 AI 写命令行命令:用自然语言描述目标和环境,让 AI 生成命令并逐个解释参数,危险操作先用只读或演练方式验证。
典型场景
测试工程师需要在服务器或自己电脑上批量处理文件,比如找出最近 7 天修改过的大文件、统计日志里的错误数量、批量压缩备份。命令记不住,每次都要搜索。而且测试工程师手上通常同时压着“整理兼容性测试机型清单”之类的事情,如果每次都从零开始,很容易顾此失彼。
用什么工具
可以用对话助手(ChatGPT、Claude、DeepSeek 等),也可以用终端里的 AI 工具,例如 GitHub Copilot CLI、Warp 等终端的 AI 功能。
案例:一次完整的使用过程(虚构)
下面这个例子是虚构的:小周遇到的难题是“提测时间延后两天,回归时间被压缩”。为了不让它拖慢“补充登录模块的接口自动化用例”的进度,小周决定借助 AI 写命令行命令。第一次只写了一句简单的要求,结果很空泛;第二次把对象(项目经理)、目的和限制条件都写清楚,输出就可用多了。这也是本文提示词模板要把背景写全的原因。
分步操作
- 说明操作系统和 Shell,例如 Ubuntu 的 bash 或 macOS 的 zsh
- 要求 AI 逐个解释参数
- 涉及删除或修改的命令,先运行只列出结果的版本
- 确认无误后再执行,必要时先备份
提示词示例
下面的提示词可以直接复制,按测试工程师的实际情况替换细节:
【背景】当前的难点是:提测时间延后两天,回归时间被压缩。
环境:Ubuntu 22.04,bash
我是测试工程师,需要处理 /data/模块_files 目录下的文件。
请给出命令:
1. 找出最近 7 天修改过、大于 100MB 的文件,按大小排序显示
2. 统计 /var/log/app 目录下所有 .log 文件中包含“ERROR”的行数,按文件分别显示
3. 把 30 天前的 .log 文件打包压缩到 /backup,打包成功后再删除原文件
要求:逐个解释参数;第 3 个命令请先给出只列出文件、不删除的演练版本。
效果示例(虚构演示)
示例输出如下(虚构内容,仅演示 AI 大致会给出什么样的结果):
1. 查找大文件
find /data/模块_files -type f -mtime -7 -size +100M -exec ls -lh {} + | sort -k5 -h
-mtime -7:7 天内修改;-size +100M:大于 100MB2. 统计错误行数
grep -c "ERROR" /var/log/app/*.log3. 演练(只列出)
find /var/log/app -name "*.log" -mtime +30 -print正式执行
find /var/log/app -name "*.log" -mtime +30 -print0 | tar --null -czf /backup/logs-$(date +%F).tar.gz -T - --remove-files
--remove-files会在打包后删除原文件,请先确认演练结果。
这样的输出只是起点。真正用到“补充登录模块的接口自动化用例”这类工作里之前,还需要对照原始资料逐条检查,并补上 AI 不知道的背景。
注意事项与技巧
- 涉及 rm、–remove-files、chmod -R 等命令时,一定先运行演练版本。
- 不同系统命令参数不同(例如 macOS 与 Linux 的 sed、find),提问时说明环境。
- 把常用命令整理成带注释的脚本,下次直接复用。
给测试工程师的特别提醒
把需求文档原文给 AI,让它按等价类、边界值、异常流分别列用例。另外,AI 列出的用例只是候选清单,覆盖是否充分仍要结合需求和历史缺陷人工把关。
还可以这样用
- 解释命令:把别人给你的长命令交给 AI,逐段解释是否安全。
- 写定时任务:让 AI 生成 crontab 表达式并解释执行时间。