Xxx课题立项论证报告课题名称:基于数据驱动的软件测试框架最终成果形式:文档、动态测试框架起止时间:201x-x-1~201x-xx-30经费预算:xx万元任务承担单位:xx部课题负责人:xxx(电话:186xxxxxxxx)日期:201x-7-1密级:Xxxxxxxx公司21概述1.1研究目标、应用方向及效益分析1.1.1研究目标a)为动态测试工作提供统一的测试框架和人机接口;b)支持嵌入式系统软件实现自动化的回归测试。1.1.2应用方向a)支持嵌入式软件产品的配置项测试和系统测试;b)支持型号产品的验收测试;c)支持嵌入式系统实物、半实物仿真环境的演示验证。1.1.3效益分析数据驱动(Data-driven)测试技术又被称为表驱动技术,是第三代自动化测试的核心技术,其设计思想是:测试脚本与测试数据分离,二者共同被测试框架读取后驱动运行环境完成测试执行。当前测试工作的执行场景及应用该技术后测试工作的执行场景见图1。图1应用该技术前后的工作场景对比在深入研究先进测试技术的基础上,自主开发和应用一款通用性强的测试框架,能够充分利用现有的环境资源,在测试工作中直接使用已得到充分验证的“检测仪-产品”环境、“PC机-单板”环境及基于SIMICS的虚拟化硬件环境,可显著提升测试环境生成的效率,大大节省了环境搭建、跨平台移植的时间,能够支持测试人员只专注于测试工作本身,显著提升人力资源利用的效率和质量。同时,作为一项相对基础的测试技术,具有较强的扩展潜力和高品质的兼容特性,能够继续发展、衍生出面向嵌入式系统的自动化测试技术、集成化测试技术等众多应用技术,对增强软件测试环境建设的开放性和自主性,促进软件相关专业发展及军品软件质量提升具有重要意义。1.2国外研究现状和发展趋势数据驱动技术最早可追溯到2000年CarlJ.Nagle提出的一个自动化测试框架,其设3计已完整体现出数据驱动技术的核心思想,在随后的发展中,数据驱动测试技术的潜在价值和应用前景很快得到了测试行业的广泛认可,美国明尼苏达大学(UniversityofMinnesota)于2002年主办了题为“IMAhottopicsworkshop:Data-drivencontrolandoptimization”的研讨会。IEEE从2008年开始举办TheIEEEIntWorkshoponDefectandDataDrivenTesting研讨会议,专注于研究和交流各类基于数据的故障诊断、系统测试技术和方法。由于数据驱动的技术思想相对朴素简单,其实现方法和表现形式非常灵活,并没有统一的标准和要求,各领域在测试应用过程中往往会根据具体情况进行调整和创新,部分商业软件会在用例脚本生成、测试结果分析等方面提供更多支持,但是其核心设计方法并没有发生实质性的突破和改变。1.3研究背景在嵌入式系统软件产品的测试工作中,由于缺少统一的测试技术和测试环境,测试人员在执行动态测试过程中会遇到诸多障碍:a)测试启动后,需要花费较多的时间和精力来临时搭建和调试测试环境;b)测试用例和测试框架深度耦合,项目测试用例脚本难以独立管理和应用;c)缺少通用的测试驱动框架和用例脚本语法规则,测试用例复用困难,无法开展测试资产积累;d)面对实物、半实物和纯虚拟的运行环境,测试用例跨平台执行需要花费大量的额工作量;e)缺少自动化的动态测试环境,测试效率难以提升。面对软件测试当前的情况,购买商业测试环境在短期内同样无法解决问题。商业测试环境虽然提供了丰富的硬件接口资源和成熟的测试套件,但是面对的硬件产品时,在物理接口对接、环境验证、测试用例录入、总线接口定义等方面存在较多应用问题,因此,仅仅引进一个商业测试环境难以真正解决问题。42主要研究内容、创新点和考核指标2.1主要研究内容a)通用的数据驱动测试原理和方法;b)跨平台的自适应测试框架设计技术;c)基于XML语言的测试用例脚本设计与解析技术;d)测试脚本辅助生成方法。2.2创新点a)提供统一的测试人机接口,能快速完成测试环境的搭建、扩展和恢复;b)具有较强的平台自适应能力,可同时支持Simics虚拟环境、“检测仪-产品”、“PC机-单板”等运行环境,支持跨平台移植;c)统一的脚本语法和设计模式,支持测试用例脚本跨型号复用;d)支持实施嵌入式系统的自动化测试。2.3考核指标a)完成自适应测试框架的开发和原理验证,并成功应用于一个以上型号软件的动态测试;b)以下文档通过评审:1)基于数据驱动的动态测试技术研究报告;2)基于数据驱动的软件测试框架设计方案;3)基于XML语言的测试用例脚本语法规则设计报告;4)基于XML语言的测试用例脚本解析器设计报告;5)基于数据驱动的软件测试框架软件使用手册。2.4环境适应性本课题研究的基于数据驱动的软件测试框架拟采用驱动中间件的设计思路,预期能够适应以下几类环境:a)“检测仪-产品”验收测试环境;b)“PC机-单板”半实物测试环境;c)Simics全虚拟硬件仿真环境;d)分布式的演示验证环境。该软件测试框架支持跨平台的零修改移植,能够在多个平台之间实现测试脚本、测试数据的共享。2.5技术成熟度基于数据驱动的测试技术属于测试应用技术,经过十多年的发展,在国内外已经得到5了非常广泛的实际应用,国内的商用平台、商用软件都已经普遍应用了该项技术。因此,该项技术本身已经比较成熟。2.6符合性当前软件测试工作普遍存在缺少统一的测试人机界面和动态测试技术,测试用例和测试数据复用困难,测试专业难以实现资产积累和持续改进,亟需针对产品特点和环境现状进行深入研究,提出一套符合所情的解决方案。基于数据驱动的软件测试框架是一款通用性强的软件测试框架,在充分利用现有环境资源的基础上,为软件测试、系统测试、验收测试、仿真验证提供了一个统一的软件测试人机界面,不仅解决了现实的测试问题,同时也为软件测试专业技术发展奠定了良好的基础。3研究方案、关键技术及技术实施途径3.1研究方案软件测试框架的构想见图2,具体的研究方案如下:1)完成通用的数据驱动测试原理研究;2)完成软件测试框架方案设计和评审(拟采用XML语言作为脚本语言);3)软件测试框架软件开发及原理验证;4)设计脚本语言语法规则,创建解析器,完成原理验证;5)完成基于实物、虚拟环境的接口驱动集成、调试与原理验证;6)选择一个在研型号项目开展测试工作,通过工程应用来进一步验证和完善。图2基于数据驱动的软件测试框架构型3.2关键技术a)支持接口自适应的数据驱动引擎;6b)基于XML的测试用例脚本语法规则设计技术;c)基于XML的测试用例脚本解析技术。3.3技术途径a)通过现场调研、技术交流等途径完成对通用数据驱动测试技术的消化与研究;b)通过技术合作等途径获取相关关键技术和方法;c)立足现有的“检测仪-产品”环境、“PC机-单板”环境及Simics全虚拟硬件仿真环境,完成通用测试框架的开发、集成和验证;d)选择在研型号软件测试项目开展原理验证和工程应用工作。3.4可行性分析国内外对基于数据驱动测试技术的研究与应用已经相对成熟,国内市场上也已经出现了类似的商业产品,相比较而言,针对通用技术开展研究并掌握的风险较低,但是本课题涉及到的三项关键技术需要开展一系列的调研、原理研究和验证实验。对于接口自适应相关的技术和方法可以参考PC机、手机等操作系统的通用处理方法,使用统一和标准的接口驱动层来隔离运行环境对测试框架本身及上层应用的影响,如图3。通过研究机载嵌入式系统软件的“激励-响应”特征及相关领域的业务要求,提取测试用例的通用设计及驱动运行模式,逐步建立并完善基于XML的用例设计方法,在此基础上可以提炼形成一套用例脚本语法规则,该项关键技术风险也相对较低。图2测试框架中的接口自适应原理74研究进度及最终成果形式4.1研究进度序号计划名称计划开始时间计划结束时间1通用的数据驱动测试原理研究201x-7-1201x-7-302软件测试框架方案设计和评审201x-8-1201x-10-303软件测试框架的软件开发及验证201x-10-1201x-12-304机载嵌入式软件用例设计模式研究201x-1-1201x-3-305基于XML语言的测试用例脚本语法规则研究201x-1-1201x-4-306XML脚本解析器的创建及原理验证201x-4-1201x-5-307测试框架集成及原理验证201x-1-1201x-5-308选择在研软件测试项目,开展基于“检测仪-产品”环境的应用验证201x-6-1201x-8-309选择在研软件测试项目,基于SIMICS虚拟环境的应用验证201x-6-1201x-8-3010编制研究报告提交评审201x-9-1201x-10-3011课题验收201x-11-1201x-11-304.2最终成果形式a)基于数据驱动的软件测试框架软件包;b)基于数据驱动的动态测试技术研究报告;c)基于数据驱动的软件测试框架设计方案;d)基于XML语言的测试用例脚本语法规则设计报告;e)基于XML语言的测试用例脚本解析器设计报告;f)基于数据驱动的软件使用手册。85协作配套措施及协作单位xxxxxx6所需研究试验条件及落实措施类别项目现有条件需补充条件落实措施97经费预算与开支范围单位:万元7.1开支范围序号费用范围开支范围备注1外协费2采购费7.2经费预算序号费用支付设想经费概算备注1201x年10万2201x年20万总计30万108课题承担单位人员概况姓名专业课题组职务职称年投入科研时间