软件测试/测试开发丨利用人工智能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. 系统的测试变化:如果中间步骤输出的数据不满足需求,可以通过提示词进行纠正与补充。
相关推荐
湫兮之风36 分钟前
Opencv: cv::LUT()深入解析图像块快速查表变换
人工智能·opencv·计算机视觉
Christo31 小时前
TFS-2018《On the convergence of the sparse possibilistic c-means algorithm》
人工智能·算法·机器学习·数据挖掘
qq_508823401 小时前
金融量化指标--2Alpha 阿尔法
大数据·人工智能
黑金IT2 小时前
`.cursorrules` 与 `.cursorcontext`:Cursor AI 编程助手时代下的“双轨配置”指南
人工智能
dlraba8022 小时前
基于 OpenCV 的信用卡数字识别:从原理到实现
人工智能·opencv·计算机视觉
IMER SIMPLE3 小时前
人工智能-python-深度学习-经典神经网络AlexNet
人工智能·python·深度学习
测试老哥3 小时前
6个步骤实现Postman接口压力测试
自动化测试·软件测试·测试工具·测试用例·接口测试·压力测试·postman
小憩-4 小时前
【机器学习】吴恩达机器学习笔记
人工智能·笔记·机器学习
却道天凉_好个秋5 小时前
深度学习(二):神经元与神经网络
人工智能·神经网络·计算机视觉·神经元