- 易迪拓培训,专注于微波、射频、天线设计工程师的培养
基于eggPlant软件的C4I自动化测试方案
录入:edatop.com 点击:
概述
随着通信手段的日益完备,现代火炮技术对数字化程度的要求越来越高,在作战体系这个大系统中,信息化作战指挥控制系统,即C4I系统(Command Control CommuNIcations Computer And Intelligence),已然成为发挥主导和支配作用的关键系统。C4I综合运用以电子计算机为核心的各种技术设备,实现信息收集、传递、处理自动化,保障对部队和武器实施指挥与控制。现代战争表明,只有建立并有效使用信息化指挥控制系统,才能最大限度地发挥作战部队和武器装备的综合效能。
图1 C4I系统架构示意图
C4I系统用于提供指挥、控制、通信和情报传达;换言之,上级指挥单元能控制、监督或者管理各种下级部队,下级部队也能够从上级指控单元获取指令、情报等信息;而这些功能必须通过一系列人机交互系统(Human Machine Interface,也就是HMI)才能实现;还通过一系列通信链路对操作以及战术数据库进行配置和初始化,实现对战场的控制。
上级指挥单元监控战场态势,并指挥各个下级部队按要求执行任务,如开启雷达、跟踪信息、获取状态以及执行交战等;另外,下级指控单元(C2,Command & Control)则负责在本地维护和执行诊断。
在测试环境中,测试站往往利用独特的负载序列和内嵌软件、构建配置,以及系统配置项,专门的补丁和数据收集,以实现系统集成及测试。
挑战
测试在任何业务的软件开发周期中都是至关重要的,对于国防领域的软件,带有Bug未经测试的软件则很可能影响到生命安全,乃至成为导致战争失败的关键因素。在工程测试生命周期的各阶段中,C4I配置的系统集成测试面临巨大挑战。首先需要独立测试各个下级单元,尤其是对这些单元所具备的大量复杂功能和应用进行测试;然后,将这些下属单元集成以建立C4I系统级测试;那么,在测试过程中,不仅要明确、规划各个下级单元的测试需求,还要同步考虑不同层级单元的交叉测试需求,并且重复多次执行这些测试。
由于各作战层级应用了单个输入及同步输入的多重显示器;为了能够验证这一庞大复杂的集成系统的稳定性和完整性,则要求一套可控的、可重复的多层架构测试环境。
传统的测试手段是依靠手动测试团队开发测试用例和执行测试过程,并通过人工记录测试结果。C4I系统的测试包含大量人机操作,人工测试手段去执行测试,耗费巨大的人力和时间,严重影响项目周期。另外,人工测试的测试精度有限,仅通过人眼判断人机操作之后的图像显示是判断是否与预期相符,使得测试精度不高,且容易因为人为因素导致反复测试;由于测试规模庞大,加上人力和时间的限制,使得大量回归测试被忽略,只能满足部分相对而言较优先的测试任务。
对于C4I如此复杂而核心关键的系统,其测试需求及任务很庞大,包含了系统配置测试及单元配置测试,初始化测试及监控测试等等。面对如此繁重的测试任务,传统的手动测试已不再适应;采用自动化测试工具,建立自动化测试平台,执行自动化测试流程是提高测试效率且行之有效的解决方案。
解决方案
自动化测试平台要求
要满足C4I系统的测试需求,自动化测试平台需具备以下几点要求:
• “黑盒化”测试体系,无损于被测系统;
• 软件化构建测试用例(脚本),以软件替代人工执行各项人机操作;
• 模块化测试需求构建机制,能够根据单个单元测试需求,分别形成测试用例模块;各测试用例模块之间可相互包含、相互调用;
• 自动化执行测试用例,具备循环、条件判断等功能;
• 自动化图像和文字对比;自动化生成测试报告;
• 统一调度各类试验资源,与已有测试环境及测试程序集成。
C4I自动化测试平台
本方案以HMI自动化测试软件eggPlant为中心,构建C4I的自动化测试平台;不仅降低手动测试错误,同时避免了手动测试所带来的不必要的重复性测试,大大提高了测试效率。eggPlant自动化配置测试,使得能够更加全面地开展C4I系统级功能及性能的集成测试,包括通信,雷达连接操作,远程维护监控,雷达控制,态势显示管理及操作等等。eggPlant利用自动化序列来设置、配置及初始化C4I系统部件,并且在测试用例中预先规划各种应急操作,错误检查等,再将测试用例执行于系统部件即可进行稳定性测试。 [p]
eggPlant软件中定义和规划自动化测试流,eggPlant可同步关联多个被测单元进行测试,从而高效地开展C4I各个层级各个单元之间的存在的高耦合交叉测试;在回归测试及其它主要测试阶段中提供循环测试机制。
在执行完自动化测试之后,eggPlant将自动生成相对应的测试报告;通过这些报告,用户能够确认被测系统与在项目初期定义的需求是否一致。
图2 基于eggPlant的C4I测试平台结构
图3 eggPlant 软件框架
eggPlant软件概述
eggPlant软件具备尖端的图像搜索算法以及文本搜索算法,以类似“VNC远程桌面”的方式定位屏幕上的对象,进而驱动和确认被测系统的HMI操作。这样的非入侵式测试原理,使得测试环境与被测系统相互“隔离”,确保对被测系统不构成任何影响。
图4 eggPlant测试原理示意图
eggPlant软件适合于做人机界面系统的自动化测试,该软件具备以下特点,
• 黑盒级别的系统软件功能验证与测试;无需认知被测设备软件程序或底层语言,不依赖其它技术,仅需要获得VNC传递过来的图形像素信息;
• 专利精确图像识别算法,高精度图片捕获和图片对比;允许不同精度的图片捕获和对比:Tolerant, Precise, Pulsing…
• 测试用例可配置,测试脚本自动执行于被测设备,激励界面状态更新;
• 集成OCR (光学字符识别)引擎,识别200多种语言:中文, 英文, 俄文, 日文, 韩文…
• 图片诊断、图片复用、图片管理;
• 简易直觉的测试脚本语言“Sence Talk”,适合任何人使用;
• 测试脚本可编辑;测试脚本可复用于多个项目;
• 测试脚本模块化;模块可嵌套;
• 支持测试脚本的运行、暂停、单步执行、断点调试…
• 自动生成测试结果:Excel, TXT, XML
• 支持与第三方工具和语言集成:Vector CANoe, IBM Rational RQM, DOORS,C/C++,Python;
• 跨平台测试任何HMI设备;同步测试多台设备。
总结
测试工作完成时间是衡量测试效率的重要指标;基于eggPlant软件的自动化测试平台所带来的时间效益非常巨大;若要开展1000组测试,采用自动化测试方案将节约至少2000个小时;本来要花1年或几年才能完成的测试任务,将缩短为几个月乃至几个星期。不仅如此,大部分测试人员可将时间和精力投入到开发更加高级的以用户使用情景为导向的高级测试,而不仅仅是验证系统软件鲁棒性这样的常规测试。
上一篇:高校谐波源设备的谐波测试分析及治理方案
下一篇:石油焦计量方式探讨