AIGC(生成式AI)试用 32 -- AI做软件程序测试 3

    总结之前的AI做程序测试过程,试图优化提问方式,整合完成的AI程序测试提问,探索更多可能的AI测试
    AIGC(生成式AI)试用 30 -- AI做软件程序测试 1
    AIGC(生成式AI)试用 31 -- AI做软件程序测试 2

  • 总结

    - 条理化、简单化
       需求描述的越条理、每个句子越简短,AI所产出的回复结果越准确
    - 层次化、渐进式,人与AI和谐共生
      层次化、渐进式的提问似乎能够让AI做出更准确、有效的反馈 -- 所以一股脑的将大量需求提交AI并不可取,Agent应当分阶段的喂养
    - 强化异常分析和描述
      异常数据、场景、用例描述不足;正常的需求功能分析、数据准务、用例描述较为详细
    - 关于AI工具
      * 不同工具配合使用 + 深度思考 + 联网搜索;人、AI、其他工具,人机共生 
      * 二次封装,生成特定行业、特定业务的Agent
  • 整合AI程序测试提问过程,传给AI智能体,对比并评价结果

    - 需求
    - AI 提问
      > 需求测试
      > 功能点(功能测试大纲)
      > 列举测试数据
      > 测试用例

    - 整体程序测试输出结果说明
      > 需求测试
         * 同一问题,重复提问,均会对需求有新的分析、补充
         * 回复结果的描述格式越来越规整
         * 当然提问也越来越条理,结果推进提问方式的改进
      > 功能点(功能测试大纲)
         * 功能点并未与需求测试点一一对应
         * 测试点描述对需求测试点的覆盖较小
      > 测试数据
         * 分类依据更明确
         * 异常数据描述不足
      > 测试用例
         * 测试用描述简单
         * 异常用例描述不足 
    软件需求
    读入txt文件,过滤文件有关年记录
        0)读入txt文件
        1)以“。”,中文句号,为界区分一句,最小统计单位
        2)年格式:YYYY,4位
        3)输出:YYYY:所在句子内容
        4)说明
              -  一句中包含多个年的,以“,”,中文逗号连接
              - 剔除句中的非文字内容:换行符,非正常的标号等
              - 按行输出过滤到的有关年记录
    AI提问
       根据上述需求,完成以下测试内容
    1. 需求测试
       1)使用列表形式对软件需求进行分解、陈述
       2)指出需求定义中描述不清晰之处
       3)补充未明确定义的隐式需求
    2. 输出以上需求所要实现的功能列表、功能点
       1)输出以上需求的测试项和测试点,不需要标注测试预期结果
       2)输出样例,测试项:文本输入,测试点:1)非txt文件;2)大于1M的文件
       3)输出格式,表格形式输出:第1列为测试项,第2列为测试点
    3. 输出以上需求中可能的输入数据
    4. 输出以上需求的测试用例
       1)输出样例,序号、测试项、测试目的、测试数据、测试步骤、预期结果
       2)输出格式,表格形式输出
文心一言DeepSeek

一、需求测试

1. 需求分解(列表形式)

#

需求分解项

说明

1

输入文件格式

必须为txt格式文件

2

句子分割规则

以中文句号"。"为分隔符

3

年份格式定义

严格匹配4位连续数字(YYYY格式),如"2025"

4

输出格式要求

每行输出格式为"YYYY:所在句子内容",多个年份用中文逗号连接

5

数据清洗规则

需剔除换行符、非正常标点符号(如●、※等)

6

异常处理要求

需处理空文件、非文本文件、超大文件等边界情况

2. 需求描述不清晰之处

年份匹配规则不明确:

是否允许年份与其他字符粘连(如"2025年"中的"2025"是否有效)

是否需要排除非独立年份(如"12025"中的"2025"子串)

非正常标号定义模糊:

未明确需要剔除的特殊符号范围(如★、◆等装饰符号是否需要处理)

输出顺序未定义:

是否需要按年份排序输出,还是保持原文句子顺序

性能要求缺失:

未说明对超大文件(如100MB+)的处理要求

3. 补充隐式需求

编码兼容性:

需支持UTF-8/GBK等常见中文编码格式

性能要求:

默认处理不超过10MB文件,需明确超限处理策略

边界条件:

空文件应返回空输出而非报错

完全不含年份的文件应返回空结果

特殊格式处理:

需自动转换全角数字(如"2025")为半角格式

二、功能列表与测试项

1. 功能列表

功能模块

功能点描述

文件读取

支持txt格式文件输入,自动检测编码

文本解析

按中文句号分割句子,处理换行符

年份匹配

精确匹配4位连续数字,支持全角转换

数据清洗

过滤非文本字符,保留中文标点

结果输出

按"YYYY:句子"格式输出,多年份合并

2. 测试项与测试点(表格)

测试项

测试点

文本输入

1. 非txt文件
2. 大于1M的文件
3. 空文件
4. 特殊编码文件(如GB2312)

句子分割

1. 含换行符的句子
2. 连续句号
3. 句号在引号内

年份匹配

1. 有效年份(2025)
2. 无效格式(25, 2025年)
3. 子串干扰(12025)

数据清洗

1. 特殊符号(★, ◆)
2. 英文标点
3. 混合数字(202A5)

结果输出

1. 多个年份合并
2. 空结果输出
3. 特殊字符转义

三、可能的输入数据

  1. 正常数据:

    • 包含多个年份的连续文本(如:"2020年发生了疫情。2023年经济复苏。2025年预计...")

    • 混合标点符号的文本(如:"这是2025年!?;测试。")

  2. 边界数据:

    • 仅含单个年份的文本

    • 完全不含年份的文本

    • 超大文本文件(10MB+)

  3. 异常数据:

    • 二进制文件(如.exe)

    • 损坏的txt文件

    • 包含特殊编码的文本(如UTF-16)

四、测试用例(表格)

序号

测试项

测试目的

测试数据

测试步骤

预期结果

1

文本输入

验证非txt文件处理

输入.jpg图片文件

尝试读取文件

返回错误提示或拒绝处理

2

年份匹配

验证精确匹配规则

"2025, 2025年, 202A5"

运行年份检测

仅识别"2025"

3

数据清洗

验证特殊符号过滤

"这是★测试◆数据"

执行清洗操作

输出"这是测试数据"

4

结果输出

验证多年份合并规则

"2025年A事件。2026年B事件。"

运行处理并输出

"2025:2025年A事件。2026:2026年B事件。"

5

性能测试

验证大文件处理能力

生成10MB随机文本(含年份)

运行处理并计时

5秒内完成处理

五、测试样例说明

  1. 非txt文件测试

    • 测试目的:验证系统对非法文件类型的容错能力

    • 测试步骤:尝试读取.docx/.xlsx等非文本文件

    • 预期结果:应返回明确错误提示而非崩溃

  2. 特殊编码测试

    • 测试目的:验证编码兼容性

    • 测试数据:使用GB2312编码的txt文件

    • 预期结果:能正确解析中文内容

  3. 边界年份测试

    • 测试数据:"1999年,2000年,2100年"

    • 预期结果:仅识别"2000"为有效年份(根据需求定义)

### 根据需求输出如下测试内容:---

### **1. 需求测试**
#### 1.1 需求分解(列表形式)
| 序号 | 需求描述                                                                 |
|------|--------------------------------------------------------------------------|
| 0    | 读取`.txt`文件                                                          |
| 1    | 以中文句号“。”切分句子,作为最小统计单位                                |
| 2    | 识别句子中的四位数年份(格式`YYYY`)                                    |
| 3    | 输出格式:`YYYY: 句子内容`                                              |
| 4    | 补充说明:<br>- 一句含多个年份时,用中文逗号“,”连接年份<br>- 清洗句子中的非文字内容(换行符、异常符号) |

#### 1.2 需求不清晰之处
1. **年份格式**:未明确是否允许非纯数字(如“2023年”中的“年”字是否需要处理)。
2. **非文字内容**:未定义“非正常标号”的具体范围(如英文符号、特殊字符)。
3. **年份去重**:同一句子中重复的年份是否需要合并。
4. **编码要求**:未指定输入文件的编码格式(如UTF-8、GBK)。
5. **性能要求**:未说明大文件(如1GB)的处理能力。

#### 1.3 补充隐式需求
1. 年份应为纯数字(`YYYY`),忽略包含非数字的“年份”(如“二〇二三”)。
2. 清洗后的句子仅保留中文、数字、中文标点(句号、逗号)。
3. 同一句子中多个年份按出现顺序连接,无需去重。
4. 文件编码默认为UTF-8,支持其他编码需报错。
5. 输出结果按句子在原文件中的顺序排列。

### **2. 功能列表与测试点**
#### 2.1 测试项与测试点(表格形式)
| 测试项         | 测试点                                                                 |
|----------------|----------------------------------------------------------------------|
| 文件输入       | 1) 非`.txt`文件;2) 空文件;3) 超过1MB的文件                          |
| 句子分割       | 1) 多句号分割;2) 无句号的长文本;3) 句号后无内容                     |
| 年份识别       | 1) 有效四位数年份;2) 无效年份(如三位数、含字母);3) 混合格式年份   |
| 句子清洗       | 1) 去除换行符;2) 去除英文标点;3) 保留中文标点                       |
| 输出格式       | 1) 单一年份句子;2) 多年份句子;3) 无年份句子      

                  |

#### 2.2 样例(表格补充)
| 测试项         | 测试点                                                                 |
|----------------|----------------------------------------------------------------------|
| 文本输入       | 1) 上传`.doc`文件;2) 上传10MB的`.txt`文件                            |

### **3. 可能的输入数据**
| 类型       | 示例                                                                 |
|------------|----------------------------------------------------------------------|
| 有效输入   | `2023年冬奥会在北京举办。`                                           |
| 无效输入   | `年份为23或二〇二三。`                                               |
| 边界输入   | `句子无句号且包含2024和2025`                                         |
| 特殊符号   | `2023★春节\\n期间,2024年计划启动。`                                 |

### **4. 测试用例**
#### 4.1 样例用例(表格形式)
| 序号 | 测试项     | 测试目的                   | 测试数据                          | 测试步骤                         | 预期结果                         |
|------|------------|---------------------------|-----------------------------------|----------------------------------|----------------------------------|
| 1    | 文件输入   | 验证非`.txt`文件处理       | 上传`test.doc`                   | 1. 选择文件<br>2. 点击解析       | 提示“仅支持.txt文件”             |
| 2    | 年份识别   | 验证四位数年份提取         | `计划在2023和2024年完成。`       | 解析文件并输出                   | `2023,2024: 计划在2023和2024年完成` |

#### 4.2 完整用例(表格补充)
| 序号 | 测试项     | 测试目的                   | 测试数据                          | 测试步骤                         | 预期结果                         |
|------|------------|---------------------------|-----------------------------------|----------------------------------|----------------------------------|
| 3    | 句子清洗   | 验证特殊符号过滤           | `2023★春节\\n期间,2024年计划。` | 解析并清洗句子                   | `2023,2024: 春节期间,2024年计划` |
| 4    | 输出格式   | 验证无年份句子跳过         | `该项目暂无明确时间。`            | 解析文件并输出                   | 无输出                           |

---

### **说明**
- **输入数据**需覆盖有效、无效、边界值场景。
- **测试用例**需按功能点优先级排序(如文件输入>年份识别>句子清洗)。

  • 历次AI提问及结果对比

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/diannao/80718.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

C语言实现迪杰斯特拉算法进行路径规划

使用C语言实现迪杰斯特拉算法进行路径规划 迪杰斯特拉算法是一种用于寻找加权图中最短路径的经典算法。它特别适合用于计算从一个起点到其他所有节点的最短路径&#xff0c;前提是图中的边权重为非负数。 一、迪杰斯特拉算法的基本原理 迪杰斯特拉算法的核心思想是“贪心法”…

引领印尼 Web3 变革:Mandala Chain 如何助力 1 亿用户迈向数字未来?

当前 Web3 的发展正处于关键转折点&#xff0c;行业亟需吸引新用户以推动 Web3 的真正大规模采用。然而&#xff0c;大规模采用面临着核心挑战&#xff1a;数据泄露风险、集中存储的安全漏洞、跨系统互操作性障碍&#xff0c;以及低效的服务访问等问题。如何才能真正突破这些瓶…

WebSocket是h5定义的,双向通信,节省资源,更好的及时通信

浏览器和服务器之间的通信更便利&#xff0c;比http的轮询等效率提高很多&#xff0c; WebSocket并不是权限的协议&#xff0c;而是利用http协议来建立连接 websocket必须由浏览器发起请求&#xff0c;协议是一个标准的http请求&#xff0c;格式如下 GET ws://example.com:3…

Kaamel白皮书:IoT设备安全隐私评估实践

1. IoT安全与隐私领域的现状与挑战 随着物联网技术的快速发展&#xff0c;IoT设备在全球范围内呈现爆发式增长。然而&#xff0c;IoT设备带来便捷的同时&#xff0c;也引发了严峻的安全与隐私问题。根据NSF&#xff08;美国国家科学基金会&#xff09;的研究表明&#xff0c;I…

php安装swoole扩展

PHP安装swoole扩展 Swoole官网 安装准备 安装前必须保证系统已经安装了下列软件 4.8 版本需要 PHP-7.2 或更高版本5.0 版本需要 PHP-8.0 或更高版本6.0 版本需要 PHP-8.1 或更高版本gcc-4.8 或更高版本makeautoconf 安装Swool扩展 安装官方文档安装后需要再php.ini中增加…

服务器传输数据存储数据建议 传输慢的原因

一、JSON存储的局限性 1. 性能瓶颈 全量读写&#xff1a;JSON文件通常需要整体加载到内存中才能操作&#xff0c;当数据量大时&#xff08;如几百MB&#xff09;&#xff0c;I/O延迟和内存占用会显著增加。 无索引机制&#xff1a;查找数据需要遍历所有条目&#xff08;时间复…

Android四大核心组件

目录 一、为什么需要四大组件&#xff1f; 二、Activity&#xff1a;看得见的界面 核心功能 生命周期图解 代码示例 三、Service&#xff1a;看不见的劳动者 两大类型 生命周期对比 注意陷阱 四、BroadcastReceiver&#xff1a;消息传递专员 两种注册方式 广播类型 …

「Mac畅玩AIGC与多模态01」架构篇01 - 展示层到硬件层的架构总览

一、概述 AIGC&#xff08;AI Generated Content&#xff09;系统由多个结构层级组成&#xff0c;自上而下涵盖交互界面、API 通信、模型推理、计算框架、底层驱动与硬件支持。本篇梳理 AIGC 应用的六层体系结构&#xff0c;明确各组件在系统中的职责与上下游关系&#xff0c;…

[MERN 项目实战] MERN Multi-Vendor 电商平台开发笔记(v2.0 从 bug 到结构优化的工程记录)

[MERN 项目实战] MERN Multi-Vendor 电商平台开发笔记&#xff08;v2.0 从 bug 到结构优化的工程记录&#xff09; 其实之前没想着这么快就能把 2.0 的笔记写出来的&#xff0c;之前的预期是&#xff0c;下一个阶段会一直维持到将 MERN 项目写完&#xff0c;毕竟后期很多东西都…

互斥量函数组

头文件 #include <pthread.h> pthread_mutex_init 函数原型&#xff1a; int pthread_mutex_init(pthread_mutex_t *restrict mutex, const pthread_mutexattr_t *restrict attr); 函数参数&#xff1a; mutex&#xff1a;指向要初始化的互斥量的指针。 attr&#xf…

互联网的下一代脉搏:深入理解 QUIC 协议

互联网的下一代脉搏&#xff1a;深入理解 QUIC 协议 互联网是现代社会的基石&#xff0c;而数据在其中高效、安全地传输是其运转的关键。长期以来&#xff0c;传输层的 TCP&#xff08;传输控制协议&#xff09;一直是互联网的主力军。然而&#xff0c;随着互联网应用场景的日…

全球城市范围30米分辨率土地覆盖数据(1985-2020)

Global urban area 30 meter resolution land cover data (1985-2020) 时间分辨率年空间分辨率10m - 100m共享方式保护期 277 天 5 时 42 分 9 秒数据大小&#xff1a;8.98 GB数据时间范围&#xff1a;1985-2020元数据更新时间2024-01-11 数据集摘要 1985~2020全球城市土地覆…

【Vue】单元测试(Jest/Vue Test Utils)

个人主页&#xff1a;Guiat 归属专栏&#xff1a;Vue 文章目录 1. Vue 单元测试简介1.1 为什么需要单元测试1.2 测试工具介绍 2. 环境搭建2.1 安装依赖2.2 配置 Jest 3. 编写第一个测试3.1 组件示例3.2 编写测试用例3.3 运行测试 4. Vue Test Utils 核心 API4.1 挂载组件4.2 常…

数据湖的管理系统管什么?主流产品有哪些?

一、数据湖的管理系统管什么&#xff1f; 数据湖的管理系统主要负责管理和优化存储在数据湖中的大量异构数据&#xff0c;确保这些数据能够被有效地存储、处理、访问和治理。以下是数据湖管理系统的主要职责&#xff1a; 数据摄入管理&#xff1a;管理系统需要支持从多种来源&…

英文中日期读法

英文日期的读法和写法因地区&#xff08;英式英语与美式英语&#xff09;和正式程度有所不同&#xff0c;以下是详细说明&#xff1a; 一、日期格式 英式英语 (日-月-年) 写法&#xff1a;1(st) January 2023 或 1/1/2023读法&#xff1a;"the first of January, twenty t…

衡量矩阵数值稳定性的关键指标:矩阵的条件数

文章目录 1. 定义2. 为什么要定义条件数&#xff1f;2.1 分析线性系统 A ( x Δ x ) b Δ b A(x \Delta x) b \Delta b A(xΔx)bΔb2.2 分析线性系统 ( A Δ A ) ( x Δ x ) b (A \Delta A)(x \Delta x) b (AΔA)(xΔx)b2.3 定义矩阵的条件数 3. 性质及几何意义3…

4月22日复盘-开始卷积神经网络

4月24日复盘 一、CNN 视觉处理三大任务&#xff1a;图像分类、目标检测、图像分割 上游&#xff1a;提取特征&#xff0c;CNN 下游&#xff1a;分类、目标、分割等&#xff0c;具体的业务 1. 概述 ​ 卷积神经网络是深度学习在计算机视觉领域的突破性成果。在计算机视觉领…

【网络原理】从零开始深入理解TCP的各项特性和机制.(三)

上篇介绍了网络原理传输层TCP协议的知识,本篇博客给大家带来的是网络原理剩余的内容, 总体来说,这部分内容没有上两篇文章那么重要,本篇知识有一个印象即可. &#x1f40e;文章专栏: JavaEE初阶 &#x1f680;若有问题 评论区见 ❤ 欢迎大家点赞 评论 收藏 分享 如果你不知道分…

解决qnn htp 后端不支持boolean 数据类型的方法。

一、背景 1.1 问题原因 Qnn 模型在使用fp16的模型转换不支持类型是boolean的cast 算子&#xff0c;因为 htp 后端支持量化数据类型或者fp16&#xff0c;不支持boolean 类型。 ${QNN_SDK_ROOT_27}/bin/x86_64-linux-clang/qnn-model-lib-generator -c ./bge_small_fp16.cpp -b …

使用Three.js搭建自己的3Dweb模型(从0到1无废话版本)

教学视频参考&#xff1a;B站——Three.js教学 教学链接&#xff1a;Three.js中文网 老陈打码 | 麒跃科技 一.什么是Three.js&#xff1f; Three.js​ 是一个基于 JavaScript 的 ​3D 图形库&#xff0c;用于在网页浏览器中创建和渲染交互式 3D 内容。它基于 WebGL&#xff0…