NI自动化测试技术展望2-系统软件栈.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
NI自动化测试技术展望2:系统软件栈 软件是自动化测试系统的重要组成部分,软件第一次被用于控制独立的仪器到现在已有40多年。从那时起,软件在自动化测试中的作用日益凸显。事实上,当前大多数测试系统中,软件开发费用通常是硬件成本费用的2到10倍以上。从许多测试工程企业的工程人员的组成比例即可看出这种情况,即雇佣的软件工程师比硬件工程师多。为了应对软件开发成本的上升及产品开发周期的缩短,当前业界领先的公司都在强调设计一个强大的系统软件栈,以确保他们在软件方面的投入能 够被延续下去,提高软件资源的重用率。事实上,2010年NI进行的测试经理人调查报告显示,测试经理们对系统软件方面投入更多的关注,其重要性在2011年提高测试开发效率的策略中排名第二。 ? 从系统软件的角度来看,大多数公司正在远离一体式的软件栈,这种栈通常包含固定不变的代码和直接调用仪器驱动函数。相反,他们正在探索一种模块化的软件栈,这种栈的成员既独立又紧密关联,包括测试管理软件、应用软件及驱动软件等。这种类型的系统软件栈可帮助工程师针对每个领域的应用选择最佳的工具,而且可在标准化的商用现成工具(Commercial Off The Shelf -COTS)和非现成的工具之间作出选择。可以看到一个重要的趋势,就是将模块化的理念应用到软件栈的每一层之中,这包括越来越来多地使用过程模型 (Process Model)、代码模块库以及硬件抽象层等。 ? 测试管理软件用于定义测试系统关键的自动控制策略及序列流程。其中过程模型是测试管理软件层中的关键技术,因为过程模型能够将非测试任务与测试任务分离,从而让工程师们能够轻松地在不同测试序列之间以及测试站之间对非测试任务进行标准化管理。非测试任务包括与企业的连接任务中的绝大部分,用于数据输入、质量数据库的数据记录、与车间沟通以及生成可编辑的测试报告。有了这个模块化框架,企业可以拥有几个过程模型,这些过程模型能够应用在许多不同产品线及所部署的成百上千的测试设备上。过程模型还可以在不影响测试任务的情况下简化对测试站的非测试功能修改,从而减少了对已部署的测试站进行更新所需的时间。例如,工程师们根据市场需求可以在顺序执行、批处理和并行执行等测试过程模型中进行切换,从而快速改变测试站的执行流程。 ? ? 模块化的软件架构可以增加灵活性,并缩短测试系统开发时间 ? 应用软件层同样重要,因为它直接影响了测试系统中测试相关的任务。很多企业已经开始开发模块化的测试代码,也就是所谓的代码模块。这些模块由测试管理软件进行调用,进行实际的测量和分析,来确定特定测试步骤的通过/失败状态。许多代码模块对不同类型的待测设备(Devices Under Test- DUT)执行类似的I/O功能,因此在这方面,实现资源的重用以及使用基于团队的开发方法分配开发任务非常重要。近来,业界已经有越来越多的企业采用重用测试代码库和更多的源代码控制(Source Code Control-SCC)工具。现在,许多应用软件供应商在软件中集成SCC工具和一些高级功能(如三方对比与合并,three-way diff/merging),以适应这种测试软件开发趋势。一些企业甚至设立专门的监督机制以确保一定程度的资源重用和团队开发,以防止重复开发和过分依赖单一开发者完成所有的代码开发。 ? 此外,企业在应用软件层中对需求管理软件工具的集成日益增多。这有助于确保根据设计需求进行一对一的测试项目覆盖,这对有严格质量标准的行业来说至关重要。新的需求管理软件在应用软件与需求管理环境(例如Telelogic DOORS)之间提供了一个连接,这极大地减少了在测试系统开发中跟踪需求覆盖所花的时间。 ? 系统软件栈的最后一个部分是硬件抽象层(Hardware Abstraction Layer -HAL),它的需求和使用越来越多。HAL位于系统软件栈的驱动软件层,它将应用软件从仪器硬件中分离,最大限度减小移植和升级测试系统花费的时间和成本。一般有两种HAL设计方法:以仪器为中心或以特定应用为中心。对于以仪器为中心的API,定义了一个内部通用的以仪器为中心的API“标准”,可用于多种类型的待测设备。 ? “我们创建了一个自动化的设计验证测试框架,其中包括一个硬件抽象层。这个框架使我们能够灵活地配置测试硬件,而无需更改测试软件的代码。” - Mohammad Ahmad, Manager, System Test and Verification, ????????????????Thales Communications ? 可互换虚拟仪器(Interchangeable Virtual Instruments -IVI),是一个行业标准的HAL。从仪器为中心的抽象的观点来看,顶层的测试应用程序去调用一个以仪

文档评论(0)

xuan9872 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档