APP下载

基于.Net平台的信息化自动测试系统设计

2017-12-11卜钰杨松涛

电脑知识与技术 2017年31期
关键词:可扩展性信息共享自动测试

卜钰 杨松涛

摘要:针对信息化自动测试的需求,构建了基于.NET开发平台的信息化自动测试系统,分析了系统框架模块与系统测试流程,着重讨论了扩展性设计,通过整体框架设计和模块化解析,实现了自动测试系统的高速度、高精度、高自动化程度等指标,具有较好的实用性、安全性和可维护性。

关键词:自动测试;.Net;可扩展性;信息共享

中图分类号:TP311 文献标识码:A 文章编号:1009-3044(2017)31-0219-03

随着科学技术的飞速发展,航空航天设备、军用武器系统等高技术产品的复杂程度日益提高,传统的人工检测维护手段已经无法满足现代化装备的支持保障要求,信息化自动测试系统正逐步成为复杂系统与设备可靠运行的必要保证。目前信息化自动测试系统已经广泛应用于从产品研制、生产、存储到使用维护的各个环节,在航空、航天、国防、交通、能源等重要领域发挥着关键的支持保障作用[1]。

1 .Net开发平台

.Net开发平台是.Net框架(.Net Framework)的一系列集合,该平台简化了在高度分介式环境中的应用程序的开发,不仅提供创建服务,并将这些服务集成在一起[2]。.NET框架具有两个主要部件:公共语言运行环境和.NET框架类库。

公共语言运行环境(common language runtim,CLR)是.NET框架的基础,它实现了跨语言集成,特别是跨语言继承,同时可实现自动处理系统级任务、如内存管理和进程通信。在开发和运行工作方面,公共语言运行环境不仅简化了开发工作,编译一次即可在任何支持运行库的CUP和操作系统上运行,并进一步实现简单、安全的部署。

.NET Framework提供了一套操作系统层级的对象函数库,可供程序语言调用使用,它为数据输入/输出、安全性等提供了服务和对象模型[3]。.NET框架类库是一个与公共语言运行库紧密集成的可重用的类型集合。该类库是面向对象的,并提供自己的托管代码可从中导出功能的类型。这不但使.NET框架类型易于使用,还减少了学习.NET框架的新功能所需要的时间。此外,第三方组件可与.NET框架中的类无缝集成[4]。

2 信息化自动测试系统

2.1 系统结构

信息化自动测试系统是针对数据通信设备设计的运行于PC机的信息化自动测试系统,实现对目标设备的自动测试和性能分析。为了提高设备调试和测试的工作效率,有必要建议一个远程自动测试和诊断系统平台,以完成复杂系统的测试,测试结果集中统一生成测试报告,提高了测试人员的工作效率和测试设备的利用率,同时利用远程技术手段提高现场保障能力。信息化自动测试系统作为测试仪器的控制端,既负责和其直接连接的测试仪器的接口通信控制,又可以通过网络进行目标远程测试。

从信息化自动测试系统连接框图可以看出,信息化自动测试系统通过PC机实现对测试仪器的控制,对与其相连接的被测设备的参数进行自动化测量,并对测试结果和反馈数据进行存储、汇总、统计和分析,实现多方位测试和评估。

2.2 系统特点

1) 测试速度快

信息化自动测试系统针对目标设备的目标测试项目,设计了流程化的测试步骤,与手动测试相比,测试过程中不需要人为对设备参数和性能进行干预,采用电子开关矩阵替代了手工连接电缆等操作,节省了电缆连接和参数设置的操作时间,大大提高了测试速度[5],可自动化完成多个测试项目。

2) 测试精度高

由于流程化设计对各项参数在中间步骤和最后结果都予以保存和记录,在保证测试的可回溯性同时 减少了人为误差,能够利用莱特和格茹布斯等准则去除粗大误差(野值),同时采用基于统计学的误差处理方法来减少随机误差,可保证的较高的测试精度。

3) 扩展性能好

测试系统针对测试仪器和测试技术进行分级结构处理,减少了因测试仪器更新或者测试技术更新带来的不便,实现了良好的可扩展性。

4) 综合评估强

测试工程机制实现了测试设备和测试项目的整合处理和综合评估,在测试工程中,可以对单台设备的多次测试进行整合,也可对所有目标设备的各个测试项目进行整合,因此,不仅可以得到单台设备的性能评估结果,也可对所有目标设备的性能有整体掌握。

5) 自动化程度高

信息化自动测试系统在测试过程中可实现设备的自我校正、自我诊断,并在测试过程中和测试结束后对所有测试数据进行采集和处理,并能实现测试结果的立体化展示,实现了高度自动化测试[6]。

3 信息化自动测试系统的设计

信息化自动测试系统设计包括测试流程设计、扩展性能设计和功能模块设计。其中功能模块设计针对信息化自动测试系统核心目标和系统便利性使用而设计,测试流程设计针对所有测试项目建立,扩展性能设计考虑到设备更新等带来的系统便利性设计。

3.1 功能模块设计

3.1.1 用户管理机制

成熟的测试系统需要具备一套严格的用户管理机制。在本系统设计中考虑到用户级别和用户需求,对系统设置了身份识别机制。系统提供了用户的注册、修改、删除等功能,在提供友好交互界面的同时,也方便用户管理,图2为更改用户设置信息界面。

3.2 测试状态和测试结果显示

系统采用动态链接库的方式与测试控制系统连接,在一项测试工程结束后,调用分析评估软件的对外接口,即可启动自动测试和评估,在后台自动完成对该项测试工程下所有被测用户设备所有测试项目的评估计算,并自动生成相应报表,在整个测试过程中测试状态进行实时更新,方便第一时间掌握测试信息,图3为自动测试状态显示界面截图。

考虑到后续的处理和打印问题,采用Excel和Word文件形式對所有测试条件和测试结果进行整合和保存,如图4所示。作为通用的数据保存格式和功能强大的数据处理工具,数据以Excel和Word格式保存是十分必要的。保存后的Excel和Word文件具有良好的阅读格式,为进一步的数据处理和打印等过程打下基础。

3.2.1 综合评估机制

对于复杂测试,可能需要测试多台设备的多个测试项目。采用测试工程的概念,即一个测试工程可以包含对多台设备的多个测试项目,将多个测试项目、多台被测设备的测试信息和测试结果整合起来,方便评价设备总体,图5为综合评估统计结果显示。综合评估统计结果的显示,不仅可以对每台设备的测试情况有清晰认识,而且对于整体设备中各个测试项目的测试情况及整体设备的合格率,实现综合评估。

x

3.3 测试流程设计

从整个信息化自动测试系统的角度来看,测试可分为搭建测试环境、测试仪器自校、建立测试工程、选择测试项目、设置测试仪器参数、产生测试数据、统计并生成报表。其详细流程图如图6所示:

3.4 扩展性能设计

系统扩展性设计考虑到两个方面,一个是由于系统设备升级带来的测试系统通用性问题,一个是测试项目整合中带来的综合评估问题,针对这两个问题,我们分别采用动态链接库和测试工程来解决。

测试系统中测试项目种类多样,而且测试设备型号也会更新换代,为了提高测试系统的通用性,在设计时需要具有一定的可扩展能力。在系统设计时,将每个测试项目以动态链接库(.dll)的形式建立,主程序中只需要采用调用动态链接库的方法就可将该测试项目加入,进而完成此项目的所有测试工作。当需要增加新项目管理功能时,系统软件能够采用模块化添加的方式,添加到原有软件中,减少新加代码和原代码的耦合度,保证系统的易扩展性和扩展后的可靠性。

测试软件提供测试工程建立向导,用户可以通过界面操作,新建测试工程并命名,软件将自动建立以测试工程名称为文件夹名的文件夹,测试数据等信息均保存在本次测试工程文件夹下,便于用户数据的分类和查询。用户可以为工程中的每个测试方法配置相应的参数,当运行此项工程时多个测试方法开始依次执行,并得到各自的测试结果和指标评价。最重要的是,所建工程的全部信息和测试结果将保存到以测试工程名称为文件夹名的文件夹,方便对这些数据进行提取和处理,利用报表汇总功能对整个测试工程进行整合,实现对设备的整体评估。

动态链接库保证了设备升级后的扩展可靠性,测试工程保证了设备和测试项目的扩展性综合评估,从而保证了该信息化自动测试系统的扩展性能设计。

4 结束语

本文实现了对信息化自动测试系统的设计,从系统结构和系统特点的宏观层面把握信息化自动测试系统的核心,在系统开发方面,分别从功能、流程可扩展性三方面考虑,实现了基于.Net平台的开发,达到测试速度快、测试精度高、扩展性能好、综合评估强、自动化程度高的目标。

参考文献:

[1] 贾娜, 王红萍, 戴军, 等. 自动测试系统的发展现状和前景[J]. 科技与企业, 2015(9):8-85.

[2] 密君英. 基于三層架构的ASP.NET项目实战教程[M]. 北京: 中国电力出版社, 2011.

[3] Robert Powell,RiehardWeek. C#和.NET架构[M]. 北京: 人民邮电出版社, 2002.

[4] 郭靖. ASP.NET 开发技术大全[M]. 北京: 清华大学出版社, 2009.

[5] 于劲松, 李行善. 下一代自动测试系统体系结构与关键技术[J]. 计算机测量与控制, 2005, 13(1):1-3.

[6] 刘福军, 蔡德咏, 孟晨, 等. 下一代自动测试系统体系机构研究进展[J]. 计算机测量与控制, 2015, 23(2):339-341.

猜你喜欢

可扩展性信息共享自动测试
JXG-50S型相敏轨道电路接收器自动测试台
可并行测试的电磁兼容自动测试系统的实现
关于某型雷达自动测试系统的几点认识和建议
恩智浦推出全新i.MX 8X 处理器,为工业应用带来更高的安全性、可靠性和可扩展性
电力监控软件的可扩展性设计
构建高可扩展性的物流装备管理系统
一种卫星低频接口自动测试系统