软件测试/测试开发丨利用人工智能ChatGPT批量生成测试数据

点此获取更多相关资料

简介

测试数据是指一组专注于为测试服务的数据,既可以作为功能的输入去验证输出,也可以去触发各类异常场景。

测试数据的设计尤为重要,等价类、边界值、正交法等测试用例设计方法都是为了更全面地设计对应的测试数据集。

实践演练

在批量生成测试数据中,我们需要明确数据的类型、格式、还有需求。然后再将这些信息输入到ChatGPT中,由ChatGPT帮助我们自动生成测试数据。

那么如何让ChatGPT自动生成测试数据呢?

1.要把对应的需求信息给到ChatGPT。

2.规定好数据的输出格式。

假设以下是我们的需求内容:

要求添加一个输入框,输入框只能输入中国的手机号码。那我们可以使用如下的方式编写我们的提示词:

  • 提示词:要求添加一个输入框,输入框只能输入中国的手机号码。请根据以上需求帮我生成一些测试数据。
markdown 复制代码
很抱歉,由于我目前无法直接操作图形界面或添加实际的输入框,我无法为您生成实际的测试数据。但是,我可以为您提供一些模拟的测试数据,以供参考。请注意,这些数据是随机生成的,仅用于测试目的。
模拟的中国手机号码测试数据:
1. 13812345678
2. 15098765432
3. 13456789012
4. 13987654321
5. 13678901234

请确保在实际测试中使用合法的手机号码,并根据您的需求进行适当的验证。

这样的返回信息明显没有考虑到异常场景,并不满足我们的需求,可以继续做进一步的补充。

  • 提示词:请考虑异常场景的测试数据
markdown 复制代码
当然,为了全面测试输入框的有效性和鲁棒性,您可以考虑以下异常场景的测试数据:

1. 非数字字符:
   - 输入:abcde123456
   - 输入:1a2b3c4d5e6

2. 长度不正确的手机号码:
   - 输入:1391234567(缺少一位)
   - 输入:138123456789(超过11位)

3. 非中国手机号码:
   - 输入:+8613812345678
   - 输入:02012345678(固定电话)

4. 特殊字符:
   - 输入:13912#45678
   - 输入:15098&65432

5. 空输入:
   - 输入:(留空)

6. 其他异常情况:
   - 输入:00000000000(看起来像是假号码)
   - 输入:19912345678(虽然长度和格式正确,但可能是未来的号码)

请确保您的输入框能够正确地识别并处理这些异常情况,并向用户提供相应的错误提示或反馈。这样可以确保用户输入的有效性和系统的稳定性。

由此即可让生成的测试数据更加的完成。

除此之外,还可以限定生成的测试数据的格式信息,比如需要将生成的测试数据给代码使用,可以限定测试数据生成的格式。

  • 提示词:以上的测试数据,请使用yaml格式输出

如此一来,即可通过不同的提示词,生成满足需求的测试用例。

总结

测试数据的生成其实也是遵循提示词的技巧与原则:

  1. 写清楚需求:需要明确测试数据的内容范围、数据类型等。
  2. 将复杂的任务拆分为更简单的子任务:如果一开始就计划生成一个比较复杂的数据信息,可以从输入的范围、格式等逐步拆解。
  3. 系统的测试变化:如果中间步骤输出的数据不满足需求,可以通过提示词进行纠正与补充。
相关推荐
yusaisai大鱼3 分钟前
tensorflow_probability与tensorflow版本依赖关系
人工智能·python·tensorflow
18号房客3 分钟前
一个简单的深度学习模型例程,使用Keras(基于TensorFlow)构建一个卷积神经网络(CNN)来分类MNIST手写数字数据集。
人工智能·深度学习·机器学习·生成对抗网络·语言模型·自然语言处理·tensorflow
神秘的土鸡11 分钟前
神经网络图像隐写术:用AI隐藏信息的艺术
人工智能·深度学习·神经网络
数据分析能量站12 分钟前
神经网络-LeNet
人工智能·深度学习·神经网络·机器学习
Jaly_W20 分钟前
用于航空发动机故障诊断的深度分层排序网络
人工智能·深度学习·故障诊断·航空发动机
小嗷犬22 分钟前
【论文笔记】Cross-lingual few-shot sign language recognition
论文阅读·人工智能·多模态·少样本·手语翻译
夜幕龙29 分钟前
iDP3复现代码数据预处理全流程(二)——vis_dataset.py
人工智能·python·机器人
吃个糖糖1 小时前
36 Opencv SURF 关键点检测
人工智能·opencv·计算机视觉
AI慧聚堂1 小时前
自动化 + 人工智能:投标行业的未来是什么样的?
运维·人工智能·自动化
盛世隐者1 小时前
【pytorch】循环神经网络
人工智能·pytorch