当前位置: 首页 > news >正文

软件测试/测试开发丨突破传统,革新测试: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实现

思路分析 搭建环境逆向生层对应的类&#xff08;model、mapper.xml、mapper.java&#xff09;编写业务逻辑层编写web层&#xff08;控制器&#xff09;前端页面 一、环境搭建 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"部门&#xff1a;"><el-select v-model"form.region1" placeholder"请选择部门" filterable clearable:filter-method"dataFilter&qu…...

数据库——事务

事务是指作为一个整体被执行的一系列操作。在数据库管理系统中&#xff0c;事务是指一组数据库操作&#xff08;如插入、更新、删除等&#xff09;的逻辑单元&#xff0c;也就是说事务的本质是把多个操作打包成一个操作&#xff0c;并且它要么完全执行&#xff0c;要么完全不执…...

echarts折线图每段显示不同的颜色

效果图 配置项&#xff1a; zqChartFour: {title: {text: "一天用电量分布",subtext: "纯属虚构",},tooltip: {trigger: "axis",axisPointer: {type: "cross",},},toolbox: {show: true,feature: {saveAsImage: {},},},xAxis: {type:…...

设计模式-单例模式(Singleton)

文章目录 前言一、单例模式的概念二、单例模式的实现三、单例模式的应用场景四、单例模式优缺点优点&#xff1a;缺点&#xff1a;总结 前言 单例模式&#xff08;Singleton Pattern&#xff09;是一种创建型设计模式&#xff0c;它确保一个类只有一个实例&#xff0c;并提供一…...

优漫动游 常见的AI视频生成网站的官方网站:

1、Lumen5 Lumen5是一款在线视频制作工具&#xff0c;利用人工智能技术能够迅速将文本、和音乐转换为视频。它可以帮助你把博客文章、社交媒体内容等转化为吸引人的视频&#xff0c;从而提高你的品牌曝光率和社交媒体的参与度。 2.Animoto Animoto是一个视频制作平台&…...

Vue中数据可视化关系图展示与关系图分析

Vue中数据可视化关系图展示与关系图分析 数据可视化是现代Web应用程序的重要组成部分之一&#xff0c;它可以帮助我们以图形的方式呈现和分析复杂的数据关系。Vue.js是一个流行的JavaScript框架&#xff0c;它提供了强大的工具来构建数据可视化应用。本文将介绍如何使用Vue.js…...

【启扬方案】基于启扬安卓屏一体机的医疗手推车解决方案

医疗手推车作为医院基础设施的一部分&#xff0c;被广泛应用于医院内部&#xff0c;包括急诊室、手术室、病房和其他临床部门。伴随着互联网技术的发展和行业的渗透&#xff0c;智慧医疗受到越来越多的青睐&#xff0c;这也使得很多医疗设施得到了改进&#xff0c;医疗手推车也…...

JavaScript实现MD5加密的6种方式

关于MD5&#xff1a; MD5.js是通过前台js加密的方式对用户信息&#xff0c;密码等私密信息进行加密处理的工具&#xff0c;也可称为插件。 在本案例中 可以看到MD5共有6种加密方法&#xff1a; 1&#xff0c; hex_md5(value) 2&#xff0c; b64_md5(value) 3&#xff0c; …...

腾讯云和阿里云2核2G服务器租用价格表对比

2核2G云服务器可以选择阿里云服务器或腾讯云服务器&#xff0c;腾讯云轻量2核2G3M带宽服务器95元一年&#xff0c;阿里云轻量2核2G3M带宽优惠价108元一年&#xff0c;不只是轻量应用服务器&#xff0c;阿里云还可以选择ECS云服务器u1&#xff0c;腾讯云也可以选择CVM标准型S5云…...

label-studio的使用教程(导入本地路径)

文章目录 1. 准备环境2. 脚本启动2.1 Windows2.2 Linux 3. 安装label-studio机器学习后端3.1 pip安装(推荐)3.2 GitHub仓库安装 4. 后端配置4.1 yolo环境4.2 引入后端模型4.3 修改脚本4.4 启动后端 5. 标注工程5.1 创建工程5.2 配置图片路径5.3 配置工程类型标签5.4 配置模型5.…...

[ICLR 2022]How Much Can CLIP Benefit Vision-and-Language Tasks?

论文网址&#xff1a;pdf 英文是纯手打的&#xff01;论文原文的summarizing and paraphrasing。可能会出现难以避免的拼写错误和语法错误&#xff0c;若有发现欢迎评论指正&#xff01;文章偏向于笔记&#xff0c;谨慎食用 目录 1. 心得 2. 论文逐段精读 2.1. Abstract 2…...

Java 加密常用的各种算法及其选择

在数字化时代&#xff0c;数据安全至关重要&#xff0c;Java 作为广泛应用的编程语言&#xff0c;提供了丰富的加密算法来保障数据的保密性、完整性和真实性。了解这些常用加密算法及其适用场景&#xff0c;有助于开发者在不同的业务需求中做出正确的选择。​ 一、对称加密算法…...

微服务商城-商品微服务

数据表 CREATE TABLE product (id bigint(20) UNSIGNED NOT NULL AUTO_INCREMENT COMMENT 商品id,cateid smallint(6) UNSIGNED NOT NULL DEFAULT 0 COMMENT 类别Id,name varchar(100) NOT NULL DEFAULT COMMENT 商品名称,subtitle varchar(200) NOT NULL DEFAULT COMMENT 商…...

什么是EULA和DPA

文章目录 EULA&#xff08;End User License Agreement&#xff09;DPA&#xff08;Data Protection Agreement&#xff09;一、定义与背景二、核心内容三、法律效力与责任四、实际应用与意义 EULA&#xff08;End User License Agreement&#xff09; 定义&#xff1a; EULA即…...

智能仓储的未来:自动化、AI与数据分析如何重塑物流中心

当仓库学会“思考”&#xff0c;物流的终极形态正在诞生 想象这样的场景&#xff1a; 凌晨3点&#xff0c;某物流中心灯火通明却空无一人。AGV机器人集群根据实时订单动态规划路径&#xff1b;AI视觉系统在0.1秒内扫描包裹信息&#xff1b;数字孪生平台正模拟次日峰值流量压力…...

mysql已经安装,但是通过rpm -q 没有找mysql相关的已安装包

文章目录 现象&#xff1a;mysql已经安装&#xff0c;但是通过rpm -q 没有找mysql相关的已安装包遇到 rpm 命令找不到已经安装的 MySQL 包时&#xff0c;可能是因为以下几个原因&#xff1a;1.MySQL 不是通过 RPM 包安装的2.RPM 数据库损坏3.使用了不同的包名或路径4.使用其他包…...

如何理解 IP 数据报中的 TTL?

目录 前言理解 前言 面试灵魂一问&#xff1a;说说对 IP 数据报中 TTL 的理解&#xff1f;我们都知道&#xff0c;IP 数据报由首部和数据两部分组成&#xff0c;首部又分为两部分&#xff1a;固定部分和可变部分&#xff0c;共占 20 字节&#xff0c;而即将讨论的 TTL 就位于首…...

Maven 概述、安装、配置、仓库、私服详解

目录 1、Maven 概述 1.1 Maven 的定义 1.2 Maven 解决的问题 1.3 Maven 的核心特性与优势 2、Maven 安装 2.1 下载 Maven 2.2 安装配置 Maven 2.3 测试安装 2.4 修改 Maven 本地仓库的默认路径 3、Maven 配置 3.1 配置本地仓库 3.2 配置 JDK 3.3 IDEA 配置本地 Ma…...

推荐 github 项目:GeminiImageApp(图片生成方向,可以做一定的素材)

推荐 github 项目:GeminiImageApp(图片生成方向&#xff0c;可以做一定的素材) 这个项目能干嘛? 使用 gemini 2.0 的 api 和 google 其他的 api 来做衍生处理 简化和优化了文生图和图生图的行为(我的最主要) 并且有一些目标检测和切割(我用不到) 视频和 imagefx 因为没 a…...