软件测试/测试开发丨使用ChatGPT自动进行需求分析

简介

在实际工作过程中,常常需要拿到产品的PRD文档或者原型图进行需求分析,为产品的功能设计和优化提供建议。

而使用ChatGPT可以很好地帮助分析和整理用户需求。

实践演练

接下来,需要使用ChatGPT 辅助我们完成需求分析的任务

注意:为了方便展示,所有GPT的回复都将使用文本格式展示,以及为了避免内容过于冗长,会省略部分信息。

现在我们使用ChatGPT帮助我们生成一份PRD文档:

提示词:请帮我针对一个论坛web页面生成一份搜索功能的PRD文档。

markdown 复制代码
生成PRD文档后,可以直接让GPT针对于此文档进行需求分析。
  • 提示词:请帮我针对以上的PRD 的文档进行需求分析
markdown 复制代码
当进行需求分析时,你需要详细审查PRD文档中提出的各项需求,以便更好地理解每个需求的细节和影响。以下是对上述PRD文档中不同需求的分析:

3.1 改进搜索算法
目标:提高搜索结果的准确性和相关性。

分析:这一需求涉及到搜索引擎的核心功能,需要进行深入的自然语言处理技术。关键词匹配的扩展需要识别同义词和相关词汇,这可能需要构建词库或使用现有的自然语言处理工具。个性化推荐需要对用户的历史搜索和浏览数据进行分析,可能涉及用户数据的隐私和安全问题。考虑热度因素可能需要一个指标系统,以衡量帖子的点击率和互动情况。

3.2 高级搜索选项
目标:支持更高级的搜索选项,满足用户更精细化的搜索需求。

分析:高级搜索选项的引入将增加用户界面的复杂性,需要平衡用户友好性和功能性。按作者搜索和按时间范围搜索需要对用户界面进行设计调整,可能需要额外的用户交互步骤。按分类搜索可能涉及到论坛板块的管理和分类,需要确保搜索结果与论坛结构一致。

3.3 搜索结果页面改进
目标:优化搜索结果页面的布局和显示方式。

分析:结果预览可以提供用户更多信息,但预览内容的选择可能影响用户点击决策。高亮关键词有助于用户快速定位匹配的内容,但过度高亮可能导致信息混乱。排序选项需要一个清晰的用户界面,以便用户能够方便地切换排序方式。

3.4 响应时间优化
目标:加快搜索响应速度,减少用户等待时间。

分析:搜索响应时间的优化可能需要涉及后端搜索引擎的性能调优,如索引优化、查询优化等。前端优化可以通过异步加载、缓存等技术减少页面加载时间。但要注意,在优化性能时要平衡系统稳定性和性能提升。
...省略...

但是从返回信息中,我们可以看出其实所谓的需求分析整体内容还是比较空洞,不同的角色在需求分析这一环节的时候,侧重点都不相同,所以为了让GPT有更好的输出,尝试在提示词中添加角色、和一些应用场景。

  • 提示词:如果我是一个测试,需要从以上的需求中提炼出来的我的测试点,请帮我提炼出来。
markdown 复制代码
当从上述需求文档中提炼测试点时,你需要关注每个需求的具体细节和预期结果。以下是一些可能的测试点,可以帮助你规划测试任务:

3.1 改进搜索算法
测试不同关键词的搜索结果,验证是否正确识别同义词和相关词汇。
进行个性化推荐测试,确认系统能否根据用户历史数据进行准确的推荐。
创建帖子并模拟用户交互,测试搜索结果中的热门帖子是否按照预期排序。
3.2 高级搜索选项
测试按作者搜索功能,验证搜索结果是否仅包含指定作者的帖子。
针对不同时间范围进行搜索,验证搜索结果是否符合所选时间段的帖子。
在不同分类下进行搜索,检查搜索结果是否限定在所选分类中的帖子。
3.3 搜索结果页面改进
验证搜索结果页面中的结果预览,检查预览内容是否准确反映了帖子内容。
测试高亮关键词功能,确认关键词是否在搜索结果中正确高亮显示。
切换不同排序选项,检查结果是否按照所选排序方式进行排列。
3.4 响应时间优化
进行并发搜索测试,以验证搜索响应时间是否在系统负载下仍保持在可接受范围内。
使用较慢的网络连接测试搜索页面的加载速度,确认页面是否在合理时间内加载完成。
...省略...

如果在这个过程中,对 GPT 的某个回复不够满意,还可以进一步给他提出要求:

  • 提示词:改进搜索算法没有考虑异常场景的测试点,请补充。
markdown 复制代码
当考虑改进搜索算法的异常场景时,你需要针对一些不常见、边缘情况或错误情况进行测试,以确保系统在这些情况下能够正确处理。以下是一些可能的异常场景测试点:

改进搜索算法的异常场景测试点
空搜索关键词:测试当用户提交空的搜索关键词时,系统是否能够合理地处理,而不会导致错误或崩溃。

特殊字符处理:输入包含特殊字符、标点符号或表情符号的搜索关键词,验证系统是否正确处理这些情况。

无结果搜索:针对不常见的关键词或不存在的关键词,检查系统是否返回适当的无结果提示,而不是错误信息。

非常见词汇:测试使用非常见、生僻或不规范的词汇进行搜索,以验证系统是否能够正确匹配或建议相关词汇。

超长关键词:输入过长的搜索关键词,检查系统是否能够适当截断或进行错误处理。

大量搜索请求:模拟高并发的搜索请求,以验证系统在压力下是否能够稳定运行,并且搜索结果是否保持一致。

多次连续搜索:连续多次提交搜索请求,观察系统是否保持稳定性,并检查是否有不良的累积效应。

搜索结果一致性:针对同一关键词进行多次搜索,检查搜索结果是否在不同时间保持一致。

跨语言搜索:使用不同语言的关键词进行搜索,验证系统是否能够正确处理多语言搜索。

过多搜索参数:测试同时使用多个高级搜索选项,验证系统是否正确处理这些参数的组合。

用户历史分析错误:模拟用户历史数据分析错误或缺失,以检查系统是否能够容错并提供合理的搜索结果。

通过在测试中涵盖这些异常场景,你可以确保系统在各种不同情况下都能够稳定运行,并提供合理的用户体验。

总结

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

1.写清楚需求:在给出提示词的时候,我们通过添加场景、添加角色,让我们的需求更加明确。

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

3.系统的测试变化:在返回信息过程中,如果返回信息不满足需求,或者有偏差,需要测试回复信息,并予以修正。

4.角色扮演:在给出提示词的过程中,我们告诉GPT,需要以一个测试工程师的角色给出对应的测试点。

推荐学习

相关推荐
懒惰才能让科技进步3 小时前
从零学习大模型(十二)-----基于梯度的重要性剪枝(Gradient-based Pruning)
人工智能·深度学习·学习·算法·chatgpt·transformer·剪枝
测试19983 小时前
2024软件测试面试热点问题
自动化测试·软件测试·python·测试工具·面试·职场和发展·压力测试
水豚AI课代表5 小时前
分析报告、调研报告、工作方案等的提示词
大数据·人工智能·学习·chatgpt·aigc
测试杂货铺7 小时前
外包干了2年,快要废了。。
自动化测试·软件测试·python·功能测试·测试工具·面试·职场和发展
测试界萧萧9 小时前
外包干了4年,技术退步太明显了。。。。。
自动化测试·软件测试·功能测试·程序人生·面试·职场和发展
小码哥说测试9 小时前
接口测试用例设计的关键步骤与技巧解析!
自动化测试·测试工具·jmeter·职场和发展·测试用例·接口测试·postman
霍格沃兹测试开发学社测试人社区9 小时前
软件测试学习笔记丨Flask操作数据库-数据库和表的管理
软件测试·笔记·测试开发·学习·flask
学习前端的小z9 小时前
【AIGC】如何通过ChatGPT轻松制作个性化GPTs应用
人工智能·chatgpt·aigc
DisonTangor9 小时前
苹果发布iOS 18.2首个公测版:Siri接入ChatGPT、iPhone 16拍照按钮有用了
ios·chatgpt·iphone
晨欣9 小时前
Elasticsearch和Lucene之间是什么关系?(ChatGPT回答)
elasticsearch·chatgpt·lucene