写点什么

软件测试 / 人工智能|测试数据很头疼,ChatGPT 帮你造

  • 2023-11-20
    北京
  • 本文字数:1677 字

    阅读完需:约 6 分钟

简介

在我们完成了测试用例的编写之后,我们就需要造不同的测试数据去进行实际的测试工作了,我们要让我们的测试尽可能地覆盖所有的情况,就需要我们根据测试用例的设计方法,去设计更多的测试数据,执行更多地测试用例,使得测试更加完善。在造测试数据的时候,ChatGPT 当然也可以帮我们很多。

测试数据

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


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

生成实践

我们在借助 ChatGPT 帮我们生成测试数据时,也需要明确我们的需求,我们的数据类型格式等等,只有这样,ChatGPT 才能生成符合测试需求的测试数据,这样我们的测试结果才符合要求。


比如我们要在注册账号时输入境内的手机号码,那我们应该如何向 ChatGPT 提问生成测试数据呢?


提问:我现在需要测试一个需求,在手机号码输入框中,只能输入中国大陆境内的手机号码,请根据我的需求给我生成一些测试数据


ChatGPT 的回复如下:


理解了,你需要测试一个手机号码输入框的需求,该输入框只接受中国大陆境内的手机号码。以下是一些测试数据,包括有效和无效的手机号码示例:
- 有效的中国大陆境内手机号码示例: - 13987654321 - 18812345678 - 13723456789 - 15678901234 - 18523456789- 无效的手机号码示例(非中国大陆境内手机号码): - 12345678901 (不是有效的手机号码长度) - 8613987654321 (国家代码+手机号) - 001377654321 (国际拨号格式) - 85298765432 (中国香港手机号码) - 07894561234 (英国手机号码)这些测试数据涵盖了中国大陆境内手机号码的不同格式和有效性,以及一些不符合要求的手机号码格式。使用这些数据进行测试可以检查输入框是否符合限制条件,只接受中国大陆境内有效的手机号码。
复制代码


这个回复只考虑了地区方面,并没有考虑到非数字字符和特殊字符的情况,请帮我补充一下。


ChatGPT 的补充如下:


明白了,除了地区限制外,还需要考虑非数字字符和特殊字符的情况。以下是一些扩展的测试数据,包括非数字字符和特殊字符的情况:
含有非数字字符和特殊字符的手机号码示例:- 13987654321(正常的手机号码)- 188-1234-5678(带有连字符)- +8613723456789(带有国际拨号代码)- 137 2345 6789(带有空格)- 156@7890^234(包含特殊字符)这些测试数据包括了带有连字符、国际拨号代码、空格和特殊字符的手机号码,可以用来验证输入框是否能够正确地拒绝或者过滤掉这些非数字字符和特殊字符。
复制代码


我们可以看到,ChatGPT 根据我们的需求,补充了测试数据。


如果我们采用的是自动化测试并且我们采用了数据驱动的方法,我们可以将这些测试数据放在我们的 yaml 文件中,我们也可以让 ChatGPT 直接生成 yaml 文件。


提问:我所进行的是自动化测试,需要将以上的测试数据生成一个 yaml 文件,方便我进行数据驱动测试


ChatGPT 回复如下:


valid_phone_numbers:  - 13987654321  - 18812345678  - 13723456789  - 15678901234  - 18523456789
invalid_phone_numbers: - 12345678901 - 8613987654321 - '001377654321' - 85298765432 - 07894561234
phone_numbers_with_special_characters: - '13987654321' # 正常的手机号码 - '188-1234-5678' # 带有连字符 - '+8613723456789' # 带有国际拨号代码 - '137 2345 6789' # 带有空格 - '156@7890^234' # 包含特殊字符
复制代码


这个 YAML 文件分为三个部分:valid_phone_numbers(有效的中国大陆境内手机号码)、invalid_phone_numbers(无效的手机号码示例,不在中国大陆境内)、phone_numbers_with_special_characters(带有特殊字符的手机号码示例)。这样可以更方便地进行数据驱动测试,你可以根据需要引用这些测试数据进行自动化测试。

总结

本文主要给大家介绍了使用 ChatGPT 生成测试数据的步骤,使用 ChatGPT 可以极大地简化测试数据的构造过程,节省时间和人力资源。通过为模型提供清晰的提示,我们可以生成多样化且符合需求的测试数据,从而更全面地测试应用程序。希望本文可以帮到大家。


获取更多技术资料,请点击!



用户头像

社区:ceshiren.com 微信:ceshiren2021 2019-10-23 加入

微信公众号:霍格沃兹测试开发 提供性能测试、自动化测试、测试开发等资料,实时更新一线互联网大厂测试岗位内推需求,共享测试行业动态及资讯,更可零距离接触众多业内大佬。

评论

发布
暂无评论
软件测试/人工智能|测试数据很头疼,ChatGPT帮你造_霍格沃兹测试开发学社_InfoQ写作社区