软件测试/测试开发丨突破传统,革新测试:ChatGpt指引下的测试方案编写
点此获取更多相关资料
简介
测试方案是指描述需要被测产品的特性、测试的方法、测试环境的规划、测试工具的设计和选择、测试用例的设计方法、测试代码的设计方案。
我们常常需要根据产品的特性、测试策略等几个方向输出对应的测试方案。在写测试方案的过程中,常常会碰到没有头绪的问题。而利用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.6 耗电量测试:
- 使用耗电量测试工具(如Monsoon Power Monitor、Battery Historian)模拟不同使用场景下的耗电情况。
- 测试在不同搜索条件和使用时长下,App的耗电量是否在合理范围内。
- 关注后台搜索、结果显示等情况对耗电的影响,以及在不同设备上的差异。3.7 内存占用测试:
- 使用内存分析工具(如Android Studio的Profiler、Xcode的Instruments)监测App在不同操作下的内存占用情况。
- 测试在搜索过程中是否出现内存泄漏、过度占用等问题。
- 确保App在长时间使用后不会出现内存崩溃或性能下降的情况。4. 测试环境规划:
(前面的测试环境规划内容基本保持不变)5. 测试工具的设计和选择:
(前面的测试工具的设计和选择内容基本保持不变,可以针对耗电量测试和内存占用测试选择相应的工具)6. 测试用例的设计方法:
(前面的测试用例的设计方法内容基本保持不变,需要额外设计涉及耗电量和内存占用的测试用例)7. 测试代码的设计方案:
(前面的测试代码的设计方案内容基本保持不变,可以考虑在自动化测试脚本中集成耗电量和内存占用的监测和记录)8. 预期结果和报告:
(前面的预期结果和报告内容基本保持不变,需要在测试报告中详细记录耗电量和内存占用的测试结果)通过执行上述更新后的测试方案,您将能够全面地评估高级搜索功能在App应用中的性能、稳定性和用户体验,同时也关注了耗电量和内存占用等专项测试内容,以确保用户可以在移动设备上愉快地使用该功能,并且不会对设备性能造成过大的影响。
如此一来,便可以通过提示词优化一步步优化测试方案。再次强调一下,越是复杂的项目,越需要将提示词做进一步的优化。
总结
在这次实践中,我们使用了ChatGPT 提示词的以下技巧:
1.写清楚需求:在给出提示词的时候,不要模棱两可,把所知道的所有背景都交代清楚。比如产品需求,还有项目背景。
2.将复杂的任务拆分为更简单的子任务:需求分析本身就是一个复杂的过程,我们需要逐步拆解,并纠正GPT的回复,引导GPT给到更多的信息。
3.系统的测试变化:在交互的过程中,会发现ChatGPT无法一次满足需求,所以可以进一步纠正它的回复,直到满意为止。
相关文章:
软件测试/测试开发丨突破传统,革新测试:ChatGpt指引下的测试方案编写
点此获取更多相关资料 简介 测试方案是指描述需要被测产品的特性、测试的方法、测试环境的规划、测试工具的设计和选择、测试用例的设计方法、测试代码的设计方案。 我们常常需要根据产品的特性、测试策略等几个方向输出对应的测试方案。在写测试方案的过程中,常…...
JVM-垃圾回收器详解、参数配置
相关概念 并行和并发 并行(Parallel) 指多条垃圾收集线程并行工作,但此时用户线程仍然处于等待状态。 并发(Concurrent) 指用户线程与垃圾收集线程同时执行(但不一定是并行的,可能会交替执行…...
计算机算法分析与设计(1)---求算法时间复杂性(手写例题)
文章目录 一、主定理求解二、递归树求解三、递归树求解含O的递归方程 一、主定理求解 二、递归树求解 三、递归树求解含O的递归方程...
MyBatisPlus 分页查询
首先要定义一个配置类 MybatisConfig 放在 config 类下 他的生效是通过拦截生效的 所以是要写拦截器的 (这段拦截器的配置是固定的 CV 也可以) Configuration public class MybatisConfig{Beanpublic MybatisPlusInterceptor mybatisPlusInterceptor(){// 1.定义MybatisPlu…...
Kafka3.1部署和Topic主题数据生产与消费
文章目录 前言一、Kafka3.1X版本在Windows11主机部署二、Kafk生产Topic主题数据1.kafka生产数据2.JAVA kafka客户端消费数据 总结 前言 本章节主要讲述Kafka3.1X版本在Windows11主机下部署以及JAVA对Kafka应用: 一、Kafka3.1X版本在Windows11主机部署 1.安装JDK配…...
ICIF2023化工展首亮相,宏工科技解决方案助力制造升级
ICIF China 2023中国国际化工展览会于9月4日-6日在上海新国际博览中心举办。宏工科技携化工物料处理一站式解决方案首次亮相,同化工行业全产业链共叙物料处理自动化未来。 宏工科技是一家提供物料处理自动化设备、系统与服务的国家级高新技术企业,业务覆…...
本地部署kubesphere集群
本地部署kubesphere集群 本文采用一主两从结构 1.前置硬件准备 准备最少3台机器,本人分配如下 IP:192.168.58.10 (主) 192.168.58.11 (节点1) 192.168.58.12 (节点2) 系统镜像…...
HNU小学期工训-STC15单片机模型大作业实验报告
STC15单片机模型大作业实验报告 全称:基于STC15单片机与OLED显示模块&PC端演示的多功能声光温振时钟智能手表模型 计科210X 甘晴void 202108010XXX 【请注意:本作业入选优秀范例,直接照抄源码有很大风险】 【建议理解原理之后作改动】 …...
【计算机网络】 TCP协议头相关知识点
文章目录 TCP协议头 TCP协议头 我们来看一下TCP协议头里都有什么东西,研究一下为什么TCP协议是可靠的呢 TCP协议可靠是因为在协议头里带着一些校验的数据 首先是源端口和目的端口,这两个是UDP中也有的,但是UDP中只有这两个,没有…...
深度学习相关VO梳理
相关论文 基于学习的VO 相关: DeepVO Towards End-to-End Visual Odometry with Deep Recurrent Convolutional Neural Networks(ICRA,2017) TartanVO: A Generalizable Learning-based VO(CoRL2021) SimVODIS: Simultaneous Vis…...
SpringMVC---CRUD实现
思路分析 搭建环境逆向生层对应的类(model、mapper.xml、mapper.java)编写业务逻辑层编写web层(控制器)前端页面 一、环境搭建 1.1、导入项目所需依赖(pom.xml) <project xmlns"http://maven.apache.org/POM/4.0.0"…...
vue+elementUI el-select 自定义搜索逻辑(filter-method)
下拉列表的默认搜索是搜索label显示label,我司要求输入id显示label名称 <el-form-item label"部门:"><el-select v-model"form.region1" placeholder"请选择部门" filterable clearable:filter-method"dataFilter&qu…...
数据库——事务
事务是指作为一个整体被执行的一系列操作。在数据库管理系统中,事务是指一组数据库操作(如插入、更新、删除等)的逻辑单元,也就是说事务的本质是把多个操作打包成一个操作,并且它要么完全执行,要么完全不执…...
echarts折线图每段显示不同的颜色
效果图 配置项: zqChartFour: {title: {text: "一天用电量分布",subtext: "纯属虚构",},tooltip: {trigger: "axis",axisPointer: {type: "cross",},},toolbox: {show: true,feature: {saveAsImage: {},},},xAxis: {type:…...
设计模式-单例模式(Singleton)
文章目录 前言一、单例模式的概念二、单例模式的实现三、单例模式的应用场景四、单例模式优缺点优点:缺点:总结 前言 单例模式(Singleton Pattern)是一种创建型设计模式,它确保一个类只有一个实例,并提供一…...
优漫动游 常见的AI视频生成网站的官方网站:
1、Lumen5 Lumen5是一款在线视频制作工具,利用人工智能技术能够迅速将文本、和音乐转换为视频。它可以帮助你把博客文章、社交媒体内容等转化为吸引人的视频,从而提高你的品牌曝光率和社交媒体的参与度。 2.Animoto Animoto是一个视频制作平台&…...
Vue中数据可视化关系图展示与关系图分析
Vue中数据可视化关系图展示与关系图分析 数据可视化是现代Web应用程序的重要组成部分之一,它可以帮助我们以图形的方式呈现和分析复杂的数据关系。Vue.js是一个流行的JavaScript框架,它提供了强大的工具来构建数据可视化应用。本文将介绍如何使用Vue.js…...
【启扬方案】基于启扬安卓屏一体机的医疗手推车解决方案
医疗手推车作为医院基础设施的一部分,被广泛应用于医院内部,包括急诊室、手术室、病房和其他临床部门。伴随着互联网技术的发展和行业的渗透,智慧医疗受到越来越多的青睐,这也使得很多医疗设施得到了改进,医疗手推车也…...
JavaScript实现MD5加密的6种方式
关于MD5: MD5.js是通过前台js加密的方式对用户信息,密码等私密信息进行加密处理的工具,也可称为插件。 在本案例中 可以看到MD5共有6种加密方法: 1, hex_md5(value) 2, b64_md5(value) 3, …...
腾讯云和阿里云2核2G服务器租用价格表对比
2核2G云服务器可以选择阿里云服务器或腾讯云服务器,腾讯云轻量2核2G3M带宽服务器95元一年,阿里云轻量2核2G3M带宽优惠价108元一年,不只是轻量应用服务器,阿里云还可以选择ECS云服务器u1,腾讯云也可以选择CVM标准型S5云…...
抖音无需API开发连接Stable Diffusion,实现自动根据评论区的指令生成图像并返回
抖音用户使用场景: 随着AI绘图的热度不断升高,许多抖音达人通过录制视频介绍不同的AI工具,包括产品背景、使用方法以及价格等,以吸引更多的用户。其中,Stable Diffusion这款产品受到了许多博主达人的青睐。在介绍这款产…...
MySQL(三)
DDL(数据定义语言) 库 /* 创建数据库testone */ create database testone; /* 查询数据库testone */ show databases; /* 选择数据库testone */ use testone; /* 删除数据库testone */ drop database testone; 表 创建表 create table table_name (…...
汽车级肖特基二极管DSS220-Q 200V 2A
DSS220-Q是什么二极管?贵司有生产吗? 肖特基二极管DSS220-Q符合汽车级AEC Q101标准吗? DSS220-Q贴片肖特基二极管参数是什么封装?正向电流和反向电压是多大? DSS220-Q肖特基二极管需要100KK,有现货吗&#…...
maven jetty post 上传长度设置
maven jetty post 上传长度设置 <plugin><groupId>org.eclipse.jetty</groupId><artifactId>jetty-maven-plugin</artifactId><version>9.4.8.v20171121</version><configuration><scanIntervalSeconds>1</scanInter…...
LeetCode 面试题 03.03. 堆盘子
文章目录 一、题目二、C# 题解 一、题目 堆盘子。设想有一堆盘子,堆太高可能会倒下来。因此,在现实生活中,盘子堆到一定高度时,我们就会另外堆一堆盘子。请实现数据结构 SetOfStacks,模拟这种行为。SetOfStacks 应该由…...
Python-函数进阶
函数的多返回值 按照返回值的顺序, 写对应顺序的多个变量接受即可, 变量之间用逗号隔开,支持不同类型的数据return def test_return():return 1, 2, 3x, y, z test_return()print(x) print(y) print(z)函数参数种类 使用方式上的不同&am…...
实操Hadoop大数据高可用集群搭建(hadoop3.1.3+zookeeper3.5.7+hbase3.1.3+kafka2.12)
前言 纯实操,无理论,本文是给公司搭建测试环境时记录的,已经按照这一套搭了四五遍大数据集群了,目前使用还未发现问题。 有问题麻烦指出,万分感谢! PS:Centos7.9、Rocky9.1可用 集群配置 iph…...
如何在 Ubuntu 上安装和使用 Nginx?
ginx(发音为“engine-x”)是一种流行的 Web 服务器软件,以其高性能和可靠性而闻名。它是许多流行网站使用的开源软件,包括 Netflix、GitHub 和 WordPress。Nginx 可以用作 Web 服务器、负载均衡器、反向代理和 HTTP 缓存等。 它以…...
seatunnel win idea 本地调试
调试FakeSource,LocalFile # Set the basic configuration of the task to be performed env {execution.parallelism 1job.mode "BATCH" }# Create a source to connect to Mongodb source {# This is a example source plugin **only for test and d…...
链路追踪Skywalking快速入门
目录 1 Skywalking概述1.1 微服务系统监控三要素1.2 什么是链路追踪1.2.1 链路追踪1.2.2 OpenTracing1、数据模型:2、核心接口语义 1.3 常见APM系统1.4 Skywalking介绍1、SkyWalking 核心功能:2、SkyWalking 特点:3、Skywalking架构图&#x…...
建设网站需要什么资质/宁波seo优化公司排名
本篇介绍easymybatis如配置乐观锁和逻辑删除。乐观锁easymybatis提供的乐观锁使用方式跟JPA一样,使用Version注解来实现。即:数据库增加一个int或long类型字段version,然后实体类version字段上加上Version注解即可。实现原理是根据mysql的行锁…...
集团网站建设调研报告/长沙网络推广平台
参考:Tiny Spring 分析一,原文:1000行代码读懂Spring(一)- 实现一个基本的IoC容器 代码地址:https://github.com/xiaoxicode/jdk_source_1.7/tree/master/tinyspring 特此声明,本文不能算严格意义上的原创…...
网站及数据库怎么做后门/国外网站推广平台有哪些
【链接】http://acm.hdu.edu.cn/showproblem.php?pid6109 【题意】 在这里写题意【题解】 要处理的关系越多,肯定就越容易错.->单调性.根据这个二分出每组数据的最后一个是什么就好.二分判断这样:先处理出哪些数据是一样的,并在一起;并查集然后再处理不一样的,看看不一样的…...
如何做简洁网站/免费推广的网站有哪些
在数据聚合与分组中,主要包括: 根据一个或多个键(函数、数组、或dataframe的列名)拆分pandas对象 计算分组后数据的统计值,包括:计数,平均值,标准差,自定义函数 对datafr…...
网站开发给网站设置图标在什么文件中写代码/全网整合营销推广方案
明确人生的目的和意义 在经营十二条中,第一条就是“明确事业的目的意义”,做企业如果不能明确事业的目的和意义,那就没有办法办的长久,也没有办法聚拢人心,企业就会像一盘散沙。 人生也是一样的,如果不能明…...
网站的栏目规划/重庆森林电影
01 A空格site: 搜索范围所限定的网址,就能在一个网站中进行垂直搜索A。举例: 数据分析 site:zhihu.com 02 A空格filetype:文件格式 就能搜索对应类型的A文件例如:大数据 filetype:PDF ,搜索出…...