总结之前的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. 特殊字符转义 | 三、可能的输入数据 -
正常数据: -
边界数据: -
仅含单个年份的文本 -
完全不含年份的文本 -
超大文本文件(10MB+) -
异常数据: -
二进制文件(如.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秒内完成处理 | 五、测试样例说明 -
非txt文件测试: -
特殊编码测试: -
测试目的:验证编码兼容性 -
测试数据:使用GB2312编码的txt文件 -
预期结果:能正确解析中文内容 -
边界年份测试: | ### 根据需求输出如下测试内容:--- ### **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 | 输出格式 | 验证无年份句子跳过 | `该项目暂无明确时间。` | 解析文件并输出 | 无输出 | --- ### **说明** - **输入数据**需覆盖有效、无效、边界值场景。 - **测试用例**需按功能点优先级排序(如文件输入>年份识别>句子清洗)。 |



