ChatGPT加持,需求分析再无难题-程序员宅基地

技术标签: 自动化测试  需求分析  人工智能  软件测试  测试开发  chatgpt  

简介

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

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

实践演练

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

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

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

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

项目名称:论坛网站搜索功能增强
版本:1.0
发布日期:[发布日期]
作者:[你的名字]
1. 引言
...省略...
2. 目标
...省略...
3. 需求
3.1 改进搜索算法
当前搜索算法的改进将有助于提高搜索结果的质量。新算法应考虑以下因素:

关键词匹配:算法应能够识别搜索关键词的同义词和相关词汇。
用户历史:根据用户过去的搜索和浏览历史,个性化推荐搜索结果。
帖子热度:考虑帖子的点击率、评论数量等因素,影响搜索结果排序。
3.2 高级搜索选项
为满足用户更具体的搜索需求,增加以下高级搜索选项:

按作者搜索:允许用户根据帖子作者进行搜索。
按时间范围搜索:允许用户指定搜索结果的发布时间范围。
按分类搜索:允许用户在特定论坛板块中进行搜索。
3.3 搜索结果页面改进
优化搜索结果页面的布局和显示方式:

结果预览:显示搜索结果的摘要,让用户更快速地了解帖子内容。
高亮关键词:在搜索结果中高亮显示与搜索关键词匹配的部分。
排序选项:允许用户根据相关性、发布时间等对搜索结果进行排序。
3.4 响应时间优化
通过以下方式减少搜索响应时间:

搜索索引优化:优化搜索引擎的索引结构,加快搜索速度。
前端优化:使用异步加载等前端技术,提高搜索页面的加载速度。
...省略...
[类似网站或竞品]的搜索功能
[技术团队]的建议和意见

生成 PRD 文档后,可以直接让 GPT 针对于此文档进行需求分析。

  • 提示词:请帮我针对以上的PRD 的文档进行需求分析
当进行需求分析时,你需要详细审查PRD文档中提出的各项需求,以便更好地理解每个需求的细节和影响。以下是对上述PRD文档中不同需求的分析:

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

总结

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

  1. 写清楚需求:在给出提示词的时候,我们通过添加场景、添加角色,让我们的需求更加明确。
  2. 将复杂的任务拆分为更简单的子任务:需求分析本身就是一个复杂的过程,我们需要逐步拆解,并纠正GPT的回复,引导GPT给到更多的信息。
  3. 系统的测试变化:在返回信息过程中,如果返回信息不满足需求,或者有偏差,需要测试回复信息,并予以修正。
  4. 角色扮演:在给出提示词的过程中,我们告诉GPT,需要以一个测试工程师的角色给出对应的测试点。

推荐学习

【霍格沃兹测试开发】7天软件测试快速入门带你从零基础/转行/小白/就业/测试用例设计实战

【霍格沃兹测试开发】最新版!Web 自动化测试从入门到精通/ 电子商务产品实战/Selenium (上集)

【霍格沃兹测试开发】最新版!Web 自动化测试从入门到精通/ 电子商务产品实战/Selenium (下集)

【霍格沃兹测试开发】明星讲师精心打造最新Python 教程软件测试开发从业者必学(上集)

【霍格沃兹测试开发】明星讲师精心打造最新Python 教程软件测试开发从业者必学(下集)

【霍格沃兹测试开发】精品课合集/ 自动化测试/ 性能测试/ 精准测试/ 测试左移/ 测试右移/ 人工智能测试

【霍格沃兹测试开发】腾讯/ 百度/ 阿里/ 字节测试专家技术沙龙分享合集/ 精准化测试/ 流量回放/Diff

【霍格沃兹测试开发】Pytest 用例结构/ 编写规范 / 免费分享

【霍格沃兹测试开发】JMeter 实时性能监控平台/ 数据分析展示系统Grafana/Docker 安装

【霍格沃兹测试开发】接口自动化测试的场景有哪些?为什么要做接口自动化测试?如何一键生成测试报告?

【霍格沃兹测试开发】面试技巧指导/ 测试开发能力评级/1V1 模拟面试实战/ 冲刺年薪百万!

【霍格沃兹测试开发】腾讯软件测试能力评级标准/ 要评级表格的联系我

【霍格沃兹测试开发】Pytest 与Allure2 一键生成测试报告/ 测试用例断言/ 数据驱动/ 参数化

【霍格沃兹测试开发】App 功能测试实战快速入门/adb 常用命令/adb 压力测试

【霍格沃兹测试开发】阿里/ 百度/ 腾讯/ 滴滴/ 字节/ 一线大厂面试真题讲解,卷完拿高薪Offer !

【霍格沃兹测试开发】App自动化测试零基础快速入门/Appium/自动化用例录制/参数配置

【霍格沃兹测试开发】如何用Postman 做接口测试,从入门到实战/ 接口抓包(最新最全教程)

【霍格沃兹测试开发】6 小时轻松上手功能测试/ 软件测试工作流程/ 测试用例设计/Bug 管理

【霍格沃兹测试开发】零基础小白如何使用Postman ,从零到一做接口自动化测试/ 从零基础到进阶到实战

【霍格沃兹测试开发】建议收藏全国CCF 测试开发大赛Python 接口自动化测试赛前辅导 / 项目实战

更多软件测试开发视频教程点此


软件测试职业发展
在这里插入图片描述
零基础入门
在这里插入图片描述

测试必备编程篇
在这里插入图片描述
自动化测试
在这里插入图片描述
性能测试
在这里插入图片描述
测试管理
在这里插入图片描述
工程效能篇
在这里插入图片描述
面试求职篇

软件测试的面试宝典,内含一线互联网大厂面试真题、面试技巧、软件测试面试简历指导,免费领取!
在这里插入图片描述
在这里插入图片描述

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/Ceshiren666/article/details/137497506

智能推荐

使用nginx解决浏览器跨域问题_nginx不停的xhr-程序员宅基地

文章浏览阅读1k次。通过使用ajax方法跨域请求是浏览器所不允许的,浏览器出于安全考虑是禁止的。警告信息如下:不过jQuery对跨域问题也有解决方案,使用jsonp的方式解决,方法如下:$.ajax({ async:false, url: 'http://www.mysite.com/demo.do', // 跨域URL ty..._nginx不停的xhr

在 Oracle 中配置 extproc 以访问 ST_Geometry-程序员宅基地

文章浏览阅读2k次。关于在 Oracle 中配置 extproc 以访问 ST_Geometry,也就是我们所说的 使用空间SQL 的方法,官方文档链接如下。http://desktop.arcgis.com/zh-cn/arcmap/latest/manage-data/gdbs-in-oracle/configure-oracle-extproc.htm其实简单总结一下,主要就分为以下几个步骤。..._extproc

Linux C++ gbk转为utf-8_linux c++ gbk->utf8-程序员宅基地

文章浏览阅读1.5w次。linux下没有上面的两个函数,需要使用函数 mbstowcs和wcstombsmbstowcs将多字节编码转换为宽字节编码wcstombs将宽字节编码转换为多字节编码这两个函数,转换过程中受到系统编码类型的影响,需要通过设置来设定转换前和转换后的编码类型。通过函数setlocale进行系统编码的设置。linux下输入命名locale -a查看系统支持的编码_linux c++ gbk->utf8

IMP-00009: 导出文件异常结束-程序员宅基地

文章浏览阅读750次。今天准备从生产库向测试库进行数据导入,结果在imp导入的时候遇到“ IMP-00009:导出文件异常结束” 错误,google一下,发现可能有如下原因导致imp的数据太大,没有写buffer和commit两个数据库字符集不同从低版本exp的dmp文件,向高版本imp导出的dmp文件出错传输dmp文件时,文件损坏解决办法:imp时指定..._imp-00009导出文件异常结束

python程序员需要深入掌握的技能_Python用数据说明程序员需要掌握的技能-程序员宅基地

文章浏览阅读143次。当下是一个大数据的时代,各个行业都离不开数据的支持。因此,网络爬虫就应运而生。网络爬虫当下最为火热的是Python,Python开发爬虫相对简单,而且功能库相当完善,力压众多开发语言。本次教程我们爬取前程无忧的招聘信息来分析Python程序员需要掌握那些编程技术。首先在谷歌浏览器打开前程无忧的首页,按F12打开浏览器的开发者工具。浏览器开发者工具是用于捕捉网站的请求信息,通过分析请求信息可以了解请..._初级python程序员能力要求

Spring @Service生成bean名称的规则(当类的名字是以两个或以上的大写字母开头的话,bean的名字会与类名保持一致)_@service beanname-程序员宅基地

文章浏览阅读7.6k次,点赞2次,收藏6次。@Service标注的bean,类名:ABDemoService查看源码后发现,原来是经过一个特殊处理:当类的名字是以两个或以上的大写字母开头的话,bean的名字会与类名保持一致public class AnnotationBeanNameGenerator implements BeanNameGenerator { private static final String C..._@service beanname

随便推点

二叉树的各种创建方法_二叉树的建立-程序员宅基地

文章浏览阅读6.9w次,点赞73次,收藏463次。1.前序创建#include<stdio.h>#include<string.h>#include<stdlib.h>#include<malloc.h>#include<iostream>#include<stack>#include<queue>using namespace std;typed_二叉树的建立

解决asp.net导出excel时中文文件名乱码_asp.net utf8 导出中文字符乱码-程序员宅基地

文章浏览阅读7.1k次。在Asp.net上使用Excel导出功能,如果文件名出现中文,便会以乱码视之。 解决方法: fileName = HttpUtility.UrlEncode(fileName, System.Text.Encoding.UTF8);_asp.net utf8 导出中文字符乱码

笔记-编译原理-实验一-词法分析器设计_对pl/0作以下修改扩充。增加单词-程序员宅基地

文章浏览阅读2.1k次,点赞4次,收藏23次。第一次实验 词法分析实验报告设计思想词法分析的主要任务是根据文法的词汇表以及对应约定的编码进行一定的识别,找出文件中所有的合法的单词,并给出一定的信息作为最后的结果,用于后续语法分析程序的使用;本实验针对 PL/0 语言 的文法、词汇表编写一个词法分析程序,对于每个单词根据词汇表输出: (单词种类, 单词的值) 二元对。词汇表:种别编码单词符号助记符0beginb..._对pl/0作以下修改扩充。增加单词

android adb shell 权限,android adb shell权限被拒绝-程序员宅基地

文章浏览阅读773次。我在使用adb.exe时遇到了麻烦.我想使用与bash相同的adb.exe shell提示符,所以我决定更改默认的bash二进制文件(当然二进制文件是交叉编译的,一切都很完美)更改bash二进制文件遵循以下顺序> adb remount> adb push bash / system / bin /> adb shell> cd / system / bin> chm..._adb shell mv 权限

投影仪-相机标定_相机-投影仪标定-程序员宅基地

文章浏览阅读6.8k次,点赞12次,收藏125次。1. 单目相机标定引言相机标定已经研究多年,标定的算法可以分为基于摄影测量的标定和自标定。其中,应用最为广泛的还是张正友标定法。这是一种简单灵活、高鲁棒性、低成本的相机标定算法。仅需要一台相机和一块平面标定板构建相机标定系统,在标定过程中,相机拍摄多个角度下(至少两个角度,推荐10~20个角度)的标定板图像(相机和标定板都可以移动),即可对相机的内外参数进行标定。下面介绍张氏标定法(以下也这么称呼)的原理。原理相机模型和单应矩阵相机标定,就是对相机的内外参数进行计算的过程,从而得到物体到图像的投影_相机-投影仪标定

Wayland架构、渲染、硬件支持-程序员宅基地

文章浏览阅读2.2k次。文章目录Wayland 架构Wayland 渲染Wayland的 硬件支持简 述: 翻译一篇关于和 wayland 有关的技术文章, 其英文标题为Wayland Architecture .Wayland 架构若是想要更好的理解 Wayland 架构及其与 X (X11 or X Window System) 结构;一种很好的方法是将事件从输入设备就开始跟踪, 查看期间所有的屏幕上出现的变化。这就是我们现在对 X 的理解。 内核是从一个输入设备中获取一个事件,并通过 evdev 输入_wayland

推荐文章

热门文章

相关标签