基于柔性化的电子产品自动化测试系统设计
2019-06-22李永利
李永利
(中兴通讯股份有限公司,广东 深圳518057)
0 引言
随着社会的进步,消费者对产品的个性化需求不断增加。电子产品已由批量化生产的模式转为小批量、多配置、多形态的柔性化生产模式。相应的自动测试技术需根据产品的形态、配置等变化进行相应的更新,以适应并满足此需求并达到性能测试全覆盖。柔性测试技术是以虚拟仪器技术、机电一体化技术、测试测量技术、通信及网络技术、软件技术等为基础,对满足测试测量系统需求的方法及手段进行深入研究的技术。可靠性、精确性、灵活性、适应性和可拓展性是柔性测试系统的研究目标,系统尤其注重测试测量系统功能的整体性[1-2]。将柔性测试技术引入到传统测试中,实践验证,此方法提升了测试工作效率,降低了维护成本,便于测试人员分析故障点。
1 传统测试系统简介
传统的测试方案,各个环节之间的联系均需人工参与,如图1所示。适用于大规模量产的产品且型号单一。
图1 测试程序的传统传递流程
(1)当测试程序异常时,测试开发工程师需要对程序进行排查,并进行相应的修改。
(2)传统的测试程序传输采用U盘拷贝的方式,测试开发人员将测试程序调试完成后,将其保存在服务器上或保存在U盘中,测试人员再拷贝到上位机(测试电脑)中。此方法降低了测试程序发布的时效性,同时使用U盘拷贝方式,存在感染病毒的风险。
(3)当产品型号发行变更时,产品测试开发人员需要重复以上动作。增加了测试开发人员的工作负荷,同时也降低了开发效率。
2 柔性化测试系统总体架构
基于柔性化的主要使用网络云服务器的功能,达到测试程序的快速共享及快速更新的目的,降低测试程序传输的时间成本。其测试程序的传递流程如图2所示。测试程序的传递不在依靠人工拷贝,而是通过网络进行,降低感染病毒的风险。本位所述的柔性化测试系统借鉴了柔性测试系统的部分方案,使测试系统柔性化,即测试信息、数据的传递是借助网络完成的。
图2 基于柔性化的测试程序的传递流程
基于柔性化的测试系统包含以下主要模块:云服务器、测试主机(上位机)、测试工装夹具、被测单元、测试数据服务器,如图3所示。各模块功能如下:
(1)被测单元(Device Under Test,DUT):在测试过程中,根据测试主机(上位机)的命令,通过测试工装夹具上的接口,将配置信息传递给测试主机。
(2)测试工装夹具(Test Fixture):提供所需的接口配置;对DUT进行固定并提供必要的保护,同时满足人机工程学的要求。
(3)上位机:定期下载相应产品的测试程序;读取DUT的配置信息,并将配置信息上传至云服务器;对DUT进行性能测试;将测试数据上传至指定数据服务器。
(4)云服务器(Cloud Server):配置信息传到云服务器后,云服务器下发相应指令使上位机运行相应的测试程序;存储与所有DUT向对应的测试程序;测试配置人员进行测试程序更新、产品配置更细等功能。
(5)测试数据服务器(Test Data Server):为便于测试数据的查询,同时降低云服务器的存储压力,测试数据可以保存至测试数据存储云服务器上。为便于分析数据及其不良定位分析,测试数据的保存需按照一定的格式进行保存。
(6)测试程序编辑:产品测试开发人员对产品测试程序进行编译的动作。
图3 测试系统总体架构
3 测试程序信息配置
云服务器做为测试管控的软件平台,包含两部分主要信息。分别为产品配置信息、测试程序信息。如图4所示。
图4 产品配置与测试程序信息图
3.1 产品配置信息
产品分类的原则:便于管理与识别;充分表述产品的详细配置信息;便于云服务器维护人员将相应的测试程序与产品配置信息建立对应关系。
产品配置信息中,产品分类可以从产品大类、产品小类、产品型号、产品配置等信息依次展开。如图5所示。在实际的工厂生产管理中,均已将产品的分类与配置信息详细的进行描述,并便于研发人员、工程测试人员、产线测试操作人员了解产品配置信息。例如PDM系统(Product Development System,产品开发系统)。如图3所示,测试开发工程师可以根据产品详细配置,将产品配置中所有的功能进行分解。如在开发C型号的产品时,测试开发工程师可分别开发USB、VGA、HDMI、DVI、WiFi功能的测试程序,即将每个配置功能的测试程序模块化。
3.2 测试程序编辑及上传云服务器
测试程序编辑:测试程序对应的测试方案形成有两种方式。方式一:测试方案的具体内容会根据产品的配置而改变,当产品的硬件不同时,测试工装夹具会依据上位机中测试程序的指令进行相应的插装或接线动作。例如图5中的产品配置A和C,配置A和C的主要差别为WiFi功能和视频输出接口的不同。当测试配置A的产品时,测试程序会配置WiFi测试模块,同时,测试程序会控制工装夹具上的HDMI插件插入到DUT相应的接口。完成测试前的准备动作。而测试配置C的产品时,WiFi测试模块将不被调用,同时,测试工装夹具会根据上位机的程序改为DVI接口插入,从而完成产品配置C的测试准备;方式二:根据产品的具体配置信息,测试配置工艺工程师对产品测试总程序进行配置,形成与产品配置相对应的测试方案。如图6所示。结合图5可知,配置C与配置A之间的差别为视频输出的差异和WiFi功能,其余配置相同,故测试配置工艺工程师可根据不同配置选择相应的模块,组合成相应的测试方案。并将配置完成的测试程序保存在云服务器上。
图5 产品分类配置示意图
图6 测试程序信息示意图
两种测试方式可以使用的条件不同,当产品配置较少时,可以选用方式一进行测试程序编辑。当产品配置数量较多时,建议使用方式一进行测试程序编辑,方式一较方式二更加智能化。本文阐述用例所使用的测试程序使用方式二进行编辑。
在测试方案的配置完成后,测试人员可根据产品代码或产品测试方案代码,操作上位机并从云服务器上下载相应的测试方案,提升配置效率,降低人为原因导致的配置失误。
4 上位机
在测试系统中,上位机的扮演着“执行者”、“处理器”和“中转站”的角色。上位机的主要工作及运行机制如下:下载DUT相应产品型号的测试程序,对DUT进行测试。测试完成后,将测试数据上传相应的测试数据服务器。
在上位机与云服务器的信息传递中,需注意上位机与云服务器的网络保持畅通,降低信息传递的耗时,提升测试效率。可以根据实际情况设置测试数据保存的方法,上位机、云服务器、测试数据服务器均可,可实时上传,亦可间隔一定时间后分批上传。
5 应用导入说明及状况
按照图3的系统架构的基本思路,将此方法导入到某产品的生产测试中。(1)上位机通过测试工装夹具的接口读取被测产品的基本信息,并将此信息上传云服务器;(2)云服务器生成测试方案,并将测试方案下发测试程序给上位机,上位机通过指令是测试工装进行必要的动作,并对被测产品进行测试;(3)测试结果上传测试数据服务器。
在生产的产品型号变更时,测试上位机根据所“读取”的产品信息,并将此信息“上报”给云服务器。云服务器即可对测试方案做相应的变更,以适应产品的变化。
6 测试系统的特点及应用效果
使用本文所述的方案,对比现有的测试方法,应用效果有:(1)测试程序开发工程师与测试人员无需再使用U盘等外部设备对程序进行拷贝,降低了电脑病毒传播的风险;(2)由于设计了工装夹具,所有的接口可以自动插拔,降低了测试人员的劳动强度和工作时间;(3)测试程序更新的响应时间大大降低。现场反馈后,测试程序开发工程师可根据反馈信息,更新测试程序并上传云服务器,而现场可即时使用更新后的测试程序。
柔性测试系统延伸了传统测试技术,本文所述测试系统的主要特征:(1)根据产品配置信息,选择相应的测试程序;(2)测试工装与测试程序之间的交互配合程度进一步提升。此方法在一定程度上降低了操作人员的参与度,降低了劳动强度,降低了系统维护成本,提升了产品测试效率,同时便于开发人员进行系统维护和不良定位。
7 结束语
与柔性测试技术相比,本系统仍有一定的提升空间有:(1)测试程序模块化,即每一个测试项目划为一个测试模块并保存在服务器上,降低测试程序的开发与维护成本;(2)云服务器测试平台的功能提升,使用柔性重构技术[3]管理测试模块的测试顺序,使云服务器测试平台变为面向测试系统需求,快速搭建流程测试系统的测试流程控制管理软件平台[4]。基于此,将产品自动化测试逐步发展成为柔性测试,提升产品自动化测试水平。