写点什么

软件测试 / 测试开发丨利用 ChatGpt 编写测试方案

作者:测试人
  • 2023-09-25
    北京
  • 本文字数:3829 字

    阅读完需:约 13 分钟

免费领取:测试资料+测试用例+简历模板+测试文档

简介


测试方案是指描述需要被测产品的特性、测试的方法、测试环境的规划、测试工具的设计和选择、测试用例的设计方法、测试代码的设计方案。


我们常常需要根据产品的特性、测试策略等几个方向输出对应的测试方案。在写测试方案的过程中,常常会碰到没有头绪的问题。而利用 ChatGPT 可以很好帮助我们解决这些问题。

实践演练

在使用 ChatGPT 输出测试方案之前,需要先明确需要输出的测试方案的需求是什么?然后根据原始的需求将内容进行拆解。再让 ChatGPT 给到对应的回复。

测试需求

功能说明:高级搜索选项。 按作者搜索:允许用户根据帖子作者进行搜索。 按时间范围搜索:允许用户指定搜索结果的发布时间范围。 按分类搜索:允许用户在特定论坛板块中进行搜索。

编写测试方案

  • 提示词:现在需要针对于高级搜索选项这个功能输出对应的测试方案。

高级搜索功能测试方案
1. 测试目标:确保高级搜索功能在各种情况下都能够准确地过滤和检索信息,同时提供用户友好的界面和错误处理。
2. 测试特性:- 关键词搜索- 过滤条件设置- 高级搜索界面- 错误处理和用户提示
3. 测试方法:
3.1 关键词搜索测试:- 输入各种类型的关键词,包括短语、单词、特殊字符等,验证搜索结果是否符合预期。- 测试搜索结果的排序是否正确,是否按照相关性或其他规则排列。- 测试搜索的响应时间,确保搜索速度在可接受范围内。
3.2 过滤条件设置测试:- 测试各种不同的过滤条件,例如时间范围、文件类型、作者等,验证过滤功能是否有效。- 针对每个过滤条件,测试正确设置时的结果和错误设置时的提示信息。
3.3 高级搜索界面测试:- 验证高级搜索界面的布局和元素是否符合设计和用户体验标准。- 测试在不同屏幕尺寸和浏览器上的界面兼容性。- 检查界面元素的交互性,如下拉菜单、复选框等是否能够正确选择和取消。
3.4 错误处理和用户提示测试:- 测试输入错误的搜索条件系统的反应,确保用户能够得到明确的错误提示。- 测试系统在高负载情况下的表现,避免系统崩溃或响应缓慢。- 验证用户在搜索过程中的中断恢复能力,例如网络中断后重新连接是否能够继续之前的搜索。
4. 测试环境规划:- 使用不同的浏览器(如Chrome、Firefox、Edge)和设备(PC、移动设备)进行测试,以确保跨平台兼容性。- 配置多种操作系统和网络环境,以模拟真实用户的使用情况。
5. 测试工具的设计和选择:- 使用自动化测试工具(如Selenium、Cypress)来执行重复性高的测试用例,如界面布局测试和关键词搜索测试。- 使用性能测试工具(如JMeter、LoadRunner)来模拟高负载情况下的性能测试。
6. 测试用例的设计方法:- 设计正向测试用例,验证功能按预期工作。- 设计边界测试用例,测试输入的极限情况。- 设计负向测试用例,测试系统的容错和错误处理能力。
7. 测试代码的设计方案:- 对于自动化测试,编写清晰、可维护的测试脚本,包括必要的断言和日志记录。- 使用版本控制工具(如Git)管理测试代码,确保团队成员协作开发和代码审查。
8. 预期结果和报告:- 每个测试用例应该有明确的预期结果,用于判断功能是否正常。- 测试报告应该清楚地列出每个测试的结果、问题和建议的解决方案。
通过执行上述测试方案,您将能够全面地评估高级搜索功能的性能、稳定性和用户体验,并确保在各种使用情况下都能够正常工作。
复制代码

可以再进一步明确我们的需求和产品。

  • 提示词:现在需要针对于高级搜索选项这个功能对应的产品形态为 App 应用,请补充你的测试方案。

高级搜索功能在App应用中的测试方案
1. 测试目标:确保App应用中的高级搜索功能能够在不同移动设备上稳定运行,准确地过滤和检索信息,并提供良好的用户体验。
2. 测试特性:- 关键词搜索- 过滤条件设置- 移动设备适配- 用户界面和交互- 错误处理和用户提示
3. 测试方法:
3.1 关键词搜索测试:- 在不同设备上输入各种类型的关键词,验证搜索结果的准确性和相关性。- 测试搜索结果的滚动和加载性能,确保在大量结果情况下的流畅体验。
3.2 过滤条件设置测试:- 测试各种不同的过滤条件,例如时间范围、地点、文件类型等,验证过滤功能是否准确生效。- 测试在过滤条件变更时,结果的实时更新和反应速度。
3.3 移动设备适配测试:- 在不同尺寸和分辨率的移动设备上进行测试,确保界面元素的布局和显示效果正常。- 验证横屏和竖屏模式下的界面适配性。
3.4 用户界面和交互测试:- 检查用户界面的布局、颜色和字体是否符合设计规范。- 测试交互元素,如按钮、下拉菜单、输入框等的响应性和可用性。- 验证用户操作流程是否直观,例如设置过滤条件、启动搜索等。
3.5 错误处理和用户提示测试:- 测试输入错误的搜索条件时,系统的反应和提示信息是否明确。- 验证网络中断后的搜索状态恢复能力,以及其他异常情况下的错误处理机制。
4. 测试环境规划:- 使用不同型号的移动设备(iOS和Android)进行测试,覆盖主流设备和版本。- 模拟不同网络情况,包括3G、4G、Wi-Fi等,以测试在不同网络环境下的性能表现。
5. 测试工具的设计和选择:- 使用移动设备模拟器或云测试平台(如AWS Device Farm、Firebase Test Lab)来进行跨设备的测试。- 使用Appium、XCUITest(iOS)、Espresso(Android)等自动化测试工具来执行自动化测试。
6. 测试用例的设计方法:- 设计适用于移动设备的正向、边界和负向测试用例,覆盖不同情况和场景。- 针对触摸操作、手势和设备旋转等特殊情况,设计相应的测试用例。
7. 测试代码的设计方案:- 编写适用于移动应用的自动化测试脚本,确保脚本能够在不同设备和操作系统上运行。- 使用版本控制工具管理移动应用测试代码,进行团队协作和代码审查。
8. 预期结果和报告:- 测试用例应具备明确的预期结果,用于判断功能是否正常。- 测试报告应清楚地记录每个测试的结果、问题和建议的解决方案,重点关注移动设备的适配性和性能。
通过执行上述测试方案,您将能够全面地评估高级搜索功能在App应用中的性能、稳定性和用户体验,从而确保用户可以在移动设备上无缝地使用该功能。
复制代码

然后我们可以看到没有针对于 App 的专项测试,比如耗电量等。可以通过提示词,继续补充对应的内容。

  • 提示词:你的测试方案缺少针对于 App 的专项测试内容,比如耗电量测试。

高级搜索功能在App应用中的测试方案
1. 测试目标:确保App应用中的高级搜索功能能够在不同移动设备上稳定运行,准确地过滤和检索信息,并提供良好的用户体验。
2. 测试特性:- 关键词搜索- 过滤条件设置- 移动设备适配- 用户界面和交互- 错误处理和用户提示
3. 测试方法:
3.1 关键词搜索测试:- 在不同设备上输入各种类型的关键词,验证搜索结果的准确性和相关性。- 测试搜索结果的滚动和加载性能,确保在大量结果情况下的流畅体验。
3.2 过滤条件设置测试:- 测试各种不同的过滤条件,例如时间范围、地点、文件类型等,验证过滤功能是否准确生效。- 测试在过滤条件变更时,结果的实时更新和反应速度。
3.3 移动设备适配测试:- 在不同尺寸和分辨率的移动设备上进行测试,确保界面元素的布局和显示效果正常。- 验证横屏和竖屏模式下的界面适配性。
3.4 用户界面和交互测试:- 检查用户界面的布局、颜色和字体是否符合设计规范。- 测试交互元素,如按钮、下拉菜单、输入框等的响应性和可用性。- 验证用户操作流程是否直观,例如设置过滤条件、启动搜索等。
3.5 错误处理和用户提示测试:- 测试输入错误的搜索条件时,系统的反应和提示信息是否明确。- 验证网络中断后的搜索状态恢复能力,以及其他异常情况下的错误处理机制。
4. 测试环境规划:- 使用不同型号的移动设备(iOS和Android)进行测试,覆盖主流设备和版本。- 模拟不同网络情况,包括3G、4G、Wi-Fi等,以测试在不同网络环境下的性能表现。
5. 测试工具的设计和选择:- 使用移动设备模拟器或云测试平台(如AWS Device Farm、Firebase Test Lab)来进行跨设备的测试。- 使用Appium、XCUITest(iOS)、Espresso(Android)等自动化测试工具来执行自动化测试。
6. 测试用例的设计方法:- 设计适用于移动设备的正向、边界和负向测试用例,覆盖不同情况和场景。- 针对触摸操作、手势和设备旋转等特殊情况,设计相应的测试用例。
7. 测试代码的设计方案:- 编写适用于移动应用的自动化测试脚本,确保脚本能够在不同设备和操作系统上运行。- 使用版本控制工具管理移动应用测试代码,进行团队协作和代码审查。
8. 预期结果和报告:- 测试用例应具备明确的预期结果,用于判断功能是否正常。- 测试报告应清楚地记录每个测试的结果、问题和建议的解决方案,重点关注移动设备的适配性和性能。
通过执行上述测试方案,您将能够全面地评估高级搜索功能在App应用中的性能、稳定性和用户体验,从而确保用户可以在移动设备上无缝地使用该功能。
复制代码

如此一来,便可以通过提示词优化一步步优化测试方案。再次强调一下,越是复杂的项目,越需要将提示词做进一步的优化。

总结

在这次实践中,我们使用了 ChatGPT 提示词的以下技巧:


1.写清楚需求:在给出提示词的时候,不要模棱两可,把所知道的所有背景都交代清楚。比如产品需求,还有项目背景。


2.将复杂的任务拆分为更简单的子任务:需求分析本身就是一个复杂的过程,我们需要逐步拆解,并纠正 GPT 的回复,引导 GPT 给到更多的信息。


3.系统的测试变化:在交互的过程中,会发现 ChatGPT 无法一次满足需求,所以可以进一步纠正它的回复,直到满意为止。

发布于: 刚刚阅读数: 5
用户头像

测试人

关注

专注于软件测试开发 2022-08-29 加入

霍格沃兹测试开发学社,测试人社区:https://ceshiren.com/t/topic/22284

评论

发布
暂无评论
软件测试/测试开发丨利用ChatGpt编写测试方案_人工智能_测试人_InfoQ写作社区