以前造测试数据靠手敲,现在和AI聊几轮天,Excel直接填满


我叫小何,刚入职做软件测试,因为专业学的是物联网,领导让我继续跟智能WiFi插座的项目。上一个配网功能刚摸熟,又接到了一个“定时开关”的需求:用户可以在APP上设置定时任务,比如“每天18:00通电、23:00断电”,或者“倒计时30分钟后关闭”。功能逻辑不复杂,但要准备测试数据的时候我头大了——时间格式、跨天跨月、非法字符、硬件断电时钟重置……随便一列就是几十条,一条条手工编,半天都搞不完,还容易漏。

我忽然想起,入职后第一次接触这个AI对话工具时,就发现以前在学校学的物联网协议知识竟然用上了——像硬件断电后时钟靠电容维持、离线本地执行这些细节,AI虽然能列出场景,但得靠我自己的专业底子去追问和判断。那次配网测试的用例设计特别高效,于是我决定这次把数据生成的活儿也交给它。结果10分钟不到,我拿到了一份120多条用例的表格,边界值、异常值、安全注入字符全都齐了。下面就把我分步“调教”AI的过程分享出来,每轮都会附上我当时问它的原话。


第一轮:先让AI吐出正常流程数据,把地基打稳

我不可能一上来就让它生成全部,那样反而会漏掉很多细节。所以第一轮我只要求正常值,覆盖所有定时类型的合法输入。

我的提问:

我有一个智能WiFi插座的“定时开关”功能,支持三种模式:

  1. 单次定时:指定某一天的某个时间执行开或关。

  2. 重复定时:选择每周几重复,比如每周一、三、五的8:00开。

  3. 倒计时:比如“30分钟后关闭”,范围为1-1440分钟。
    请为每种模式各生成5条正常流程的测试数据,包含任务名称、时间设定、动作(开/关)和预期结果,用表格展示。

AI很快返回了一张表,里面有“明天早上7:30开”、“每周二四18:00关”、“倒计时60分钟开”等15条数据,连任务名都帮我拟好了,比如“晨起通电”、“下班断电”。我直接复制到Excel里就用。这一步只花了1分多钟,省掉了反复敲键盘、想名字的枯燥。


第二轮:专攻边界值和异常时间,逼出魔鬼细节

正常数据有了,接下来是找茬。定时功能最大的坑在时间边界和非法输入上。

我的提问:

现在针对时间相关输入,帮我生成边界值和异常值的测试数据,请包含:

  • 时间边界:00:00、23:59、跨越00:00的任务

  • 日期边界:每月最后一天到下月第一天、跨年(12月31日到1月1日)、闰年2月29日

  • 非法日期:2月30日、4月31日、13月、-1月

  • 非法时间:25:00、12:60、24:00

  • 过期时间:设置过去的时间(如昨天)
    仍然用表格,增加一列“输入类型”标注是边界还是异常,并给出预期结果。

AI直接把2月29日和2月28日的对比都列了出来,还提醒我24:00和00:00在很多系统里是等效的,需要确认产品定义。这些细节要是让我自己翻日历琢磨,光查闰年规则就要花时间,而AI十几秒就吐出来了。这次我收获了40多条数据,脑子里对“时间边界测试”该测什么一下子就清晰了。


第三轮:折腾字符串,把安全注入和超长字段一锅端

任务名是用户可以随意输入的文本框,这里最容易出SQL注入、XSS或者界面崩溃的问题。我打算让AI专门生成一批“捣乱”字符串。

我的提问:

定时任务允许用户给任务命名,限制20个字符。请生成测试此输入框的异常数据,覆盖:

  • 空字符串、纯空格

  • 1字符、20字符、21字符

  • 超长字符串(500字符、1000字符)

  • 特殊字符:<script>alert(1)</script>、' OR '1'='1、<>&"/

  • 表情符号:😊、👨‍👩‍👧

  • 全角/半角混合、零宽空格(Unicode U+200B)
    也请为倒计时分钟数生成非法值:0、-1、1441、字母、小数3.5
    统一用表格,标注预期行为(如输入截断、报错、过滤等)。

AI不仅生成了我要的这些,还额外加了几条Unicode控制字符和Emoji组合,并且贴心地标注“零宽空格可能导致任务名显示为空,实际占用了长度”。看到这个提醒,我一下子就想起了以前折腾编码时踩过的坑,学校学的那些协议和编码知识果然没白学——于是我顺手在真机上验证,果然APP上名字显示空白,后台却有数据,又一个低级bug被提前挖了出来。


第四轮:补上硬件特有的断电、离线数据

纯软件测到这里差不多了,但这是一个插座,会断电、会没网,定时任务还得依赖设备本地时钟。我必须把硬件相关的异常也加进去。

我的提问:

这个插座有内置时钟,断电后依靠电容维持走时一段时间。请为我生成硬件异常场景的测试数据:

  • 定时任务执行前一分钟拔掉插座,重新上电后任务是否还执行

  • 断电期间错过多个重复任务,恢复供电后是补执行还是跳过

  • 断电超过24小时,时钟重置为1970-01-01,定时任务的行为

  • 倒计时过程中断电,重上电倒计时是否继续

  • 设备WiFi断开时,定时任务仍要能本地执行
    请用表格列出,包含“断电时长”“网络状态”和预期结果。

这一轮AI给出的数据量不多,但每条都是我以前在课本里见过却不知道怎么落地的“硬件健壮性”场景。比如“时钟回到1970年”这个问题,我直接拿去找固件同事确认,才知道当前版本确实有这个缺陷——这就是物联网测试和纯软件测试不一样的地方,数据要跟着电流和时间走。


从慌张到从容,我到底学到了什么

四轮对话加整理,总计不到10分钟,我手里就有了一份120多条的多维测试数据表。比起纯手工,省出来的时间至少是半天,更重要的是,我在提问的过程中顺便学会了怎么系统地拆解一个输入点——正常、边界、异常、安全、硬件相关,这个结构我现在拿到任何新功能都能直接套用。

AI对我来说不像是一个工具,更像一个随时在线的经验放大器:我脑子里有个模糊的“要测的方面”,它帮我穷举成具体的一条条数据;我冒出半句“哦对了还有那个”,它直接帮我补全整段。而且因为我是学物联网出身,很多硬件、协议上的直觉正好能跟AI生成的内容互相印证,那种把学校知识真正用在工作里的感觉,真的特别踏实。

新人最怕的不是不会测,而是不知道该测到多细才够,而AI恰好可以帮我把“差不多”变成“全覆盖”。如果你也在为造测试数据头疼,不妨今晚就打开聊天窗口,把你手头的功能描述贴进去试试。真的一旦用顺了,你就会发现,写用例最耗时的部分,原来可以这么轻巧地交出去。


如果这篇笔记对你有帮助,我把这次用到的测试数据生成提示词整理成了模板,放在我的CSDN主页置顶动态里了,关注我就能免费领取,直接复制改改就能用。

我是小何,刚入行的物联网专业测试新人,接下来会持续记录“AI+软件测试”的实战踩坑和心得。如果你也在摸索怎么让AI帮自己干活儿,不妨点个关注,咱们一起成长。

觉得有用的话,顺手点个赞、收藏一下,下次造数据的时候翻出来就能直接用~

Logo

AtomGit 是由开放原子开源基金会联合 CSDN 等生态伙伴共同推出的新一代开源与人工智能协作平台。平台坚持“开放、中立、公益”的理念,把代码托管、模型共享、数据集托管、智能体开发体验和算力服务整合在一起,为开发者提供从开发、训练到部署的一站式体验。

更多推荐