1. 课程导入与追溯需求分析
在自动化测试领域,测试执行本身只是手段,真正决定产品质量与工程效率的,是测试结果能否被可靠地记录、检索和追溯。TestStand 作为 NI 生态中的测试执行管理软件,提供了完整的数据库记录能力:它可以在序列执行过程中,把每一步的测量值、判定结果、操作员信息、被测件序列号、时间戳等写入数据库,并在需要时按条件查询、回放和导出。本课程围绕这条数据链路展开,帮助你从"测试跑完就结束"走向"每一次测试都可查、可证、可分析"。
为什么需要结果追溯
先看一个典型的产线场景。某批次电源模块在出厂老化测试中,有 3 台在客户现场出现输出电压漂移。如果没有测试数据记录,工程师只能重新抽测,无法确认这 3 台在出厂时的实际测量值、测试环境温度、使用的测试程序版本,也无法判断是偶发失效还是批次性缺陷。反之,如果 TestStand 已将每次测试的 StepResult 写入数据库,工程师只需按序列号查询,就能还原当时的完整测试轨迹:哪一步测了什么、实测值多少、上下限是多少、判定为 Pass 还是 Fail、由哪位操作员在何时执行。
这就是结果追溯的工程意义——它把测试从"一次性动作"变成"可复用的数据资产"。具体而言,追溯需求通常来自四个方向:
- 质量追溯:按序列号或批次反查测试记录,支撑客诉分析、失效定位与召回范围界定。
- 过程统计:汇总合格率、CPK、测量值分布,识别漂移趋势与工艺异常。
- 合规审计:医疗、汽车电子、航空等行业要求测试记录不可篡改、可长期保存、可审计。
- 持续改进:用历史数据对比不同程序版本、不同工位的测试结果,验证改进效果。
TestStand 数据库记录的整体数据链路
要理解后续章节,先要建立一张全局地图。TestStand 的结果记录并不是"执行完再统一写库",而是在序列执行过程中,由运行引擎按配置的数据库选项,把每一步的结果逐步写入。下图展示了从被测件接入到追溯查询的完整数据链路,以及各环节的关键对象。
这张链路图揭示了三个关键认知:第一,记录发生在执行过程中,而不是事后补录,因此数据库配置必须与序列开发同步考虑;第二,写入数据库的内容由 StepResult 对象和数据库 Schema 共同决定,字段设计直接决定追溯能力;第三,追溯查询是数据链路的终点,也是验证记录是否有效的唯一手段——如果查不到、查不全,前面的记录就没有意义。
核心概念速览
在进入后续章节前,先明确几个贯穿全课程的核心概念,它们会在不同章节反复出现:
- UUT(Unit Under Test):被测件。它是追溯的主键之一,通常用序列号唯一标识。TestStand 通过
RunState.Root.Locals.UUT等变量在运行时传递 UUT 信息。 - StepResult:每一步执行后生成的结果对象,包含测量值、单位、上下限、状态(Pass/Fail/Done/Error)、时间等属性。它是写入数据库的基本单元。
- Database Options:TestStand 中控制"哪些步骤写库、写哪些字段、写入哪张表"的配置入口,可在步骤级、序列级或 Station 级设置。
- Schema(表结构):数据库中的表、列、主外键关系。TestStand 自带默认 Schema,也支持自定义 Schema 以匹配企业 MES 或质量系统。
- Report(报告):面向人的可读输出,通常由数据库记录或结果文件生成,用于归档和交付。
本课程的整体框架
围绕上述数据链路,课程按"配置—写入—查询—应用"的逻辑组织,共 30 章,大致分为四个板块:
- 基础与配置:理解追溯需求,掌握数据库连接配置、Schema 选择与 Database Options 设置,让 TestStand 具备写库能力。
- 结果写入与字段映射:学习如何把 StepResult、UUT 信息、自定义变量映射到数据库列,处理多步测量、数组结果和条件写入。
- 查询、报表与追溯:掌握按序列号、批次、时间范围查询记录的方法,生成可读报告,并处理记录缺失、写入失败等异常。
- 工程化与合规:涉及数据库性能、长期归档、权限与审计、与 MES/质量系统的集成,以及典型行业案例。
Computer Motherboard Test 示例序列上动手验证,它包含完整的 UUT 信息、多步测量和 Pass/Fail 判定,是练习数据库记录与追溯的理想对象。