OCR + LLM 自动生成 Case 实战教程(非常详细),图文混合需求解析从入门到精通,收藏这一篇就够了!

OCR + LLM 自动生成 Case 实战教程(非常详细),图文混合需求解析从入门到精通,收藏这一篇就够了! 摘要需求文档里最关键的业务逻辑往往藏在一张流程图、一张原型截图或一个复杂表格中。当测试工程师面对这类“非结构化”信息时AI 能否像人类一样“看懂”并自动生成覆盖全面的测试用例本文将手把手拆解一套可落地、低成本、高精度的技术方案涵盖从 PDF 图片提取、OCR 识别优化到多模态 LLM 理解与结构化输出的全链路实现并附关键代码片段与 Prompt 模板助你打造真正的“AI 测试之眼”。引言被“图”困住的测试用例生成在智能座舱、ADAS 或车联网等复杂系统的需求文档中纯文字描述早已无法满足表达需要。产品经理和系统工程师更倾向于使用业务流程图如用户注册、订单支付状态机图如车辆电源模式切换UI 原型截图标注了交互规则和校验逻辑复杂参数表格如不同车型的传感器阈值配置这些图文混合内容恰恰是测试用例设计的核心依据。然而当前主流的 AI 测试方案如基于 LLM 解析 Word 文档对此束手无策——因为大模型“看不见”图片。结果就是测试工程师仍需人肉盯图手动梳理分支、记录规则、再一行行编写用例。效率低、易遗漏且难以规模化。有没有可能让 AI 不仅能读还能看答案是肯定的。本文将带你构建一套完整的“图文需求 → 结构化测试路径”自动化 pipeline。一、整体技术架构四步走通“视觉理解”链路我们的目标很明确输入一份含图的需求文档输出一份 JSON 格式的、可直接用于生成测试用例的结构化路径描述。为此我们设计了如下四阶段 Pipeline原始需求文档 - 图片提取 - OCR 文字识别 - 多模态 LLM 理解] - 结构化 JSON 输出核心工具选型原则开源优先避免商业 API 依赖保障数据安全。本地可运行所有组件均可在团队内部服务器部署。精度与速度平衡针对流程图等特定场景做优化。表格阶段推荐工具选择理由文档解析pdf2imagepython-docx轻量、稳定完美提取内嵌图片OCR 引擎PaddleOCR百度开源中文场景 SOTA支持检测识别方向分类多模态 LLMQwen-VL/LLaVA-1.6开源可私有化部署支持图像文本联合推理后处理OpenCVnetworkx图像预处理 后续路径分析为什么不用 GPT-4V虽然 GPT-4V 视觉能力强大但企业级需求文档通常涉密无法上传至公有云。因此私有化部署的开源多模态模型是更务实的选择。二、关键环节详解如何让 AI 精准“读懂”一张流程图Step 1高质量图片提取 —— 别让第一步就失真PDF 中的矢量图在转为图片时极易模糊。我们使用pdf2image并设置高 DPIpython编辑from pdf2image import convert_from_path# 以 300 DPI 提取保证文字清晰images convert_from_path(requirement.pdf, dpi300)for i, img in enumerate(images): img.save(fpage_{i}.png, PNG)对于 Word 文档使用python-docx提取内嵌图片python编辑from docx import Documentdoc Document(requirement.docx)for rel in doc.part.rels.values(): if image in rel.target_ref: with open(fimage_{rel.rId}.png, wb) as f: f.write(rel.target_part.blob)Step 2OCR 识别优化 —— 让文字“站得更直”流程图中的文字常带有旋转、弯曲或低对比度。直接调用 OCR 会导致大量识别错误。解决方案OpenCV 预处理 PaddleOCR 精调python编辑import cv2import numpy as npdef preprocess_image(image_path): img cv2.imread(image_path) # 1. 灰度化 gray cv2.cvtColor(img, cv2.COLOR_BGR2GRAY) # 2. 二值化增强对比度 _, thresh cv2.threshold(gray, 0, 255, cv2.THRESH_BINARY cv2.THRESH_OTSU) # 3. 去噪 denoised cv2.fastNlMeansDenoising(thresh, None, 10, 7, 21) return denoised# 使用 PaddleOCRfrom paddleocr import PaddleOCRocr PaddleOCR(use_angle_clsTrue, langch) # 启用方向分类processed_img preprocess_image(flowchart.png)result ocr.ocr(processed_img, clsTrue)✅效果对比未经处理识别准确率 ≈ 65%经 OpenCV 预处理识别准确率 ↑ 至 92%Step 3Prompt Engineering for Vision —— 教会 AI “如何看图”这是最核心、也最容易被忽视的一环。不能只丢一张图给 LLM而要给出明确的指令和输出格式。**反面教材Bad Prompt**“请描述这张图。”→ LLM 可能输出一段散文无法用于自动化。**正确姿势Good Prompt**text编辑你是一名资深汽车软件测试专家请严格按以下步骤分析此业务流程图1. **识别节点**列出所有操作节点如“输入手机号”、“验证邮箱”忽略装饰性元素。2. **识别决策点**找出所有菱形判断框并明确其“是/否”分支指向的下一个节点。3. **提取业务规则**从图中文字提取关键校验规则如“手机号必须为11位”。4. **输出格式**严格返回以下 JSON Schema{ nodes: [{id: node_1, label: 输入手机号}], edges: [{from: node_1, to: node_2, condition: 手机号有效?}], rules: [手机号长度必须为11位, 不能包含字母]}为什么这个 Prompt 有效角色设定赋予 LLM 领域知识汽车软件测试。任务分解将复杂视觉理解拆解为原子步骤。强制结构化通过 JSON Schema 约束输出便于后续程序解析。三、工程挑战与应对策略挑战 1OCR 对连接线、箭头识别为乱码流程图中的箭头常被 OCR 误识别为“→”、“—”等符号干扰 LLM 理解。应对在预处理阶段使用形态学操作Morphological Operations擦除细线python编辑kernel np.ones((2,2), np.uint8)cleaned cv2.morphologyEx(thresh, cv2.MORPH_CLOSE, kernel)在 Prompt 中明确告知“忽略所有箭头和连接线符号只关注文本节点。”挑战 2LLM “幻觉” —— 编造不存在的分支多模态模型可能因 OCR 错误或自身不确定性虚构出图中没有的路径。应对要求引用原文在 Prompt 中加入“你的每一个结论必须引用 OCR 识别出的原文片段作为依据。”后置校验用正则表达式检查输出 JSON 中的节点标签是否均出现在 OCR 结果中。挑战 3复杂图表的布局理解对于跨泳道、多层嵌套的流程图单纯 OCR 无法还原空间关系。进阶方案可选引入Layout Parser如detectron2先对图像做区域分割识别“标题区”、“流程区”、“注释区”。将不同区域分别送入 LLM再合并结果。四、落地价值从“人工看图”到“AI 自动生成”完成上述 pipeline 后我们将获得一份机器可读的 JSON它可以直接驱动测试用例生成。示例用户注册流程图 → Pytest 用例输入流程图 OCR LLM 输出json编辑{ nodes: [ {id: n1, label: 输入手机号}, {id: n2, label: 发送验证码}, {id: n3, label: 输入验证码} ], edges: [ {from: n1, to: n2, condition: 手机号有效?}, {from: n2, to: n3, condition: always}, {from: n1, to: n1, condition: 手机号无效?} ]}输出自动生成的测试用例草稿python编辑def test_register_with_invalid_phone(): 路径: 输入无效手机号 - 提示错误 - 停留在本页 page.input_phone(123) assert page.get_error() 手机号格式错误 assert page.current_step input_phonedef test_register_happy_path(): 路径: 输入有效号 - 发验证码 - 输入正确码 - 成功 page.input_phone(13800138000) page.click_send_code() page.input_code(123456) assert page.is_on_success_page()效率提升传统方式1 张复杂流程图 ≈ 2-4 小时人工梳理AI 方案端到端自动化耗时 5 分钟覆盖 100% 分支结语AI 的“眼睛”正在成为测试的新基础设施让 AI 理解图文混合需求不再是遥不可及的概念。通过OCR 多模态 LLM 精心设计的 Prompt我们已经能够构建出稳定、安全、高效的“视觉理解”能力。这不仅是提效工具更是一次测试左移Shift-Left 的实践——在需求阶段就完成测试路径的全覆盖规划。学AI大模型的正确顺序千万不要搞错了2026年AI风口已来各行各业的AI渗透肉眼可见超多公司要么转型做AI相关产品要么高薪挖AI技术人才机遇直接摆在眼前有往AI方向发展或者本身有后端编程基础的朋友直接冲AI大模型应用开发转岗超合适就算暂时不打算转岗了解大模型、RAG、Prompt、Agent这些热门概念能上手做简单项目也绝对是求职加分王给大家整理了超全最新的AI大模型应用开发学习清单和资料手把手帮你快速入门学习路线:✅大模型基础认知—大模型核心原理、发展历程、主流模型GPT、文心一言等特点解析✅核心技术模块—RAG检索增强生成、Prompt工程实战、Agent智能体开发逻辑✅开发基础能力—Python进阶、API接口调用、大模型开发框架LangChain等实操✅应用场景开发—智能问答系统、企业知识库、AIGC内容生成工具、行业定制化大模型应用✅项目落地流程—需求拆解、技术选型、模型调优、测试上线、运维迭代✅面试求职冲刺—岗位JD解析、简历AI项目包装、高频面试题汇总、模拟面经以上6大模块看似清晰好上手实则每个部分都有扎实的核心内容需要吃透我把大模型的学习全流程已经整理好了抓住AI时代风口轻松解锁职业新可能希望大家都能把握机遇实现薪资/职业跃迁这份完整版的大模型 AI 学习资料已经上传CSDN朋友们如果需要可以微信扫描下方CSDN官方认证二维码免费领取【保证100%免费】