城轨嵌入式软件自动化测试框架的设计和实现的论文

时间:2021-01-08 10:35:44 机械/重工/工业自动化 我要投稿

关于城轨嵌入式软件自动化测试框架的设计和实现的论文

  城市轨道交通系统的关键系统如联锁(CI,Computer based Interlocking)系统 , 车载控制(CC,Carborne Controller,)系统 , 轨旁区域控制器(ZC,Zone Controller), 轨 旁 线 路 控 制 器(LC,Line Controller)均为安全苛求系统(Safety Critical System)。为了满足安全苛求系统故障 — 安全的需要 ,高实时性 , 多任务的嵌入式系统成为首选 [1] 。为了提高其关键系统的嵌入式软件测试效率 , 克服手工测试存在的困难 , 有效提高该领域的自动化测试程度成为亟需解决的关键问题。本文分析面向城轨软件黑盒测试的自动化测试难点 ;阐述城轨嵌入式软件的自动化测试策略、自动化测试框架设计思想和自动化测试框架整体架构;提出基于面向服务的架构(SOA,Service Oriented Architecture)的实现方法 ;介绍该框架在轨旁安全平台系统测试中的应用情况。

关于城轨嵌入式软件自动化测试框架的设计和实现的论文

  1城轨嵌入式软件的自动化测试

  难点从被测对象的角度来看,城轨嵌入式系统在故障 — 安全、实时性、容错性上都有严苛的要求。对于此类软件的测试,在测试场景构造、测试激励和测试结果捕获上都存在一定的困难。其自动化测试难点可具体概括为以下几方面。

  1。1 测试场景复杂从仿真系统的角度看 , 实时嵌入式软件仿真测试平台实际上是一种面向实时嵌入式软件测试的半实物仿真系统。因此,在测试场景中需仿真大量的外部设备,并能通过测试脚本,精确控制这些仿真设备的行为,如信号机、道岔、信标、仿真列车、仿真 CI、仿真 CC、仿真 ZC,仿真 LC、仿真列车自动监控(ATS,Automatic Train Supervision)系统 ;另外,根据被测软件和测试数据不同,测试场景需构造以上仿真设备的子集,并采用合适的轨道线路数据,仿真设备参数,安全通信协议等。

  1。2 测试激励的`实时性与时序性当采用黑盒测试方式(激励 — 反馈机制)对城轨嵌入式软件自动化测试时 :(1)被测系统需要实时获取和处理外部激励数据,测试平台也需要实时获取和分析被测对象的反馈数据 ;(2)测试平台需确保对于相同的测试用例,每一次进行测试执行的过程中,其产生的测试激励数据在时序关系上是完全一致的。1。3 测试结果处理困难(1)需要在被测对象中合理地嵌入测试代理模块捕获被测对象的测试结果,包括状态变量、校核字等;(2)测试平台需在线或离线分析这些测试结果,给出最后的用例执行报告。

  2城轨嵌入式软件的自动化测试策略

  自动化测试是指,把以人为驱动的测试行为转化为计算机依据一定规则与设计自动执行测试行为的一种过程[2]。通过工具代替或辅助人工进行测试执行过程,目标是通过较少的开销,使被测对象得到更充分的测试,提升产品质量。在制定自动化测试策略时,需从自动化测试投资回报率的角度,对自动化测试需求分配合适的优先级。因此,对于城轨软件测试而言,自动化测试主要用于软件或系统的黑盒测试,并且产品生命周期较长,回归测试较多,在如下场合尤其适合进行自动化测试。

  2。1适合进行自动化测试的场合(1)安全平台产品,包括安全基础类库、安全协议等,该类产品作为企业的基础软件产品,一般开发周期长,回归测试频繁 ;(2)项目数据测试,如列控中心报文数据测试,该类数据测试人工测试繁琐重复,而测试接口比较稳定,适合采用自动化工具进行测试 ;(3)产品验收测试,如基于无线通信的列车自动控制(CBTC,Communication Based Train Control)系统的验收测试,可选取其测试的关键场景用例,进行自动化测试,保证产品上线前的测试效率。

  2。2不适合进行自动化测试的场合(1)主观性强的测试,如车站操作界面的显示,声音提示和告警等 ;(2)开发周期短的项目,如产品原型开发,被测对象不稳定,测试接口变更频繁 ;由于开发周期较短,积累的自动化测试脚本得不到充分的复用。

  3城轨嵌入式软件测试自动化测试框架

  3。1自动化测试框架架构模型城轨嵌入式软件自动化测试框架应该解决测试过程中的以下几方面的问题 :(1)自动化测试框架应能提供基于业务描述的脚本,使得测试人员在编写测试用例时,专注业务需求而不必关心具体的测试驱动细节 ;(2)自动化测试框架提供了测试用例管理功能,使得测试用例在整个测试生命周期中可以复用;(3)自动化测试框架提供了测试结果分析功能,在复杂场景的测试用例中,该功能可以显著提高测试效率。根据城轨嵌入式软件的自动化测试策略,该领域的自动化测试框架符合以下设计原则 :(1)测试框架的集成应基于统一开放的标准,具有良好的通用性、松耦合性、开放性和可扩展性,确保框架中子模块的实现不局限与特定的开发语言和技术,并且当子模块进行修改或重构时,整个框架保持稳定 ;(2)测试数据的管理基于统一的数据格式,子模块能透明地提交和获取测试数据进行处理 ;(3)实时性,为了确保对被测系统激励的实时性,测试框架在架构上应确保消息在平台内部能实时的处理和传递 ;(4)大容量和高性能,为了满足城轨软件大容量数据测试的要求,测试框架应采取分布式的系统架构,在提高仿真设备数量时,不影响测试平台性能。面向分布式控制系统的实时 SOA 架构[3],不仅具有SOA的统一接口标准、优秀的开放性和松耦合性,也具备分布式控制系统的实时性。因此,该架构是本文的自动化化测试框架较为理想的架构模型。

  基于文献的面向分布式控制系统的实时 SOA 架构,自动化测试框架位于该架构的企业应用服务层,并主要分为3个子服务层 :测试管理服务层、测试驱动服务层和接口协议适配服务层,其架构模型如图 1 所示。测试管理层的核心功能是 :为测试人员提供测试用例的全生命周期管理,并辅助测试人员编写测试脚本、测试结果的记录与分析和测试报告生成 ;测试驱动层的核心功能是 :根据用例脚本和测试场景配置文件,构造测试场景,并调度仿真设备的运行,另外在该层也提供了安全协议和数据库访问功能 ;接口适配层的核心功能是 :提供测试平台与被测对象之间的各种通信接口。

  3。2自动化测试框架逻辑架构基于上述的架构模型,本文实现的自动化测试框架逻辑架构如图 2 所示。服务和消息管理节点是整个测试框架的主节点,提供了基于实时消息总线的节点管理、服务注册、服务代理、服务调度、服务执行等一系列的调度和管理服务 ;测试管理服务层作为一个从节点,通常在一个服务器上,另外,测试人员可通过该层提供的 Web 服务来管理和配置整个测试框架,以及测试用例的管理、执行和分析 ;测试驱动服务层可根据测试场景的容量进行灵活的部署,通常测试环境创建、仿真器调度和数据库驱动作为一个从节点部署在一个服务器上,而安全协议节点、仿真设备节点作为独立的从节点进行动态部署,便于测试框架根据测试场测试管理层的核心功能是 :为测试人员提供测试用例的全生命周期管理,并辅助测试人员编写测试脚本、测试结果的记录与分析和测试报告生成 ;测试驱动层的核心功能是 :根据用例脚本和测试场景配置文件,构造测试场景,并调度仿真设备的运行,另外在该层也提供了安全协议和数据库访问功能 ;接口适配层的核心功能是 :提供测试平台与被测对象之间的各种通信接口。

【关于城轨嵌入式软件自动化测试框架的设计和实现的论文】相关文章:

Web自动化测试框架 架构的设计02-26

嵌入式软件自动化技术探索论文07-29

嵌入式软件对计算机软件设计的应用论文08-02

浅析嵌入式实时软件在计算机软件设计中的应用论文08-12

嵌入式计算机软件测试技术研究论文08-19

浅析计算机软件的设计与实现07-03

浅谈基于ZigBee 嵌入式智能家居控制系统的设计与实现论文08-16

嵌入式计算机软件测试关键技术探讨论文08-26

关于计算机软件开发设计的难点和对策分析论文08-22

解读嵌入式计算机软件论文09-03