关于嵌入式智能设备的测试方法的研究

发布者:Yinyue1314最新更新时间:2010-12-19 来源: 中电网关键字:测试  嵌入式智能设备  测试控制  网络环境  异常处理 手机看文章 扫描二维码
随时随地手机看文章

  1 前言

  智能软件Agent是能够为用户执行特定的任务、具有一定程度的智能、能够自主的执行部分任务并以一种合适的方式和环境相互作用的软件程序。Agent 有自主性、响应性、学习能力和社会性等特性。这使得它适合在高度动态的环境下做出及时的响应。

  嵌入式技术和新一代移动通讯网络的发展使得嵌入式智能设备大量的涌现。这些设备的大都具有嵌入式操作系统的支持, 并运行着越来越丰富的应用程序。如何对这些应用程序进行测试,就成为一个需要研究的课题。本文将Agent技术引入嵌入式智能设备的测试中,使用目标设备Agent, 测试控制Agent, 网络环境Agent分别模拟和处理测试设备,测试工程师和测试环境的复杂性,利用Agent自身具有的特点,提出了一种有效的自动化测试的方法。

  2 相关的研究及本文的思路

  Agent 所具有的自主性、响应性、学习能力和社会性等特性,使得它很适合处理复杂测试系统中的问题。将Agent技术应用于测试领域已经有一些相关的研究,下面是具体的介绍。

  Jeongeun Choi 和 Byoungju Choi [1]提出了一个基于Agent技术的测试工具,它通过使用用户接口Agent来处理和测试者的交互,使用测试用例选择Agent来进行测试用例的选择,并使用回归测试Agent进行回归测试,从而很好的实现了自动化的软件测试。但是他们提出的测试用例选择技术仅能在大量已有的测试用例中选择最佳的用例,不能减少编写测试用例本身的复杂性。

  另外一些研究将Agent 技术应用到了某一领域的测试中。Yu Qi、 David Hung 和 Eric Wong [3] 提出了一个基于Agent 技术的Web 应用程序测试方法。他们使用Agent技术降低了网络应用测试的复杂性。他们的方法不仅仅适用于Web应用程序的测试,也适合于嵌入式智能设备的测试。

  在实际测试过程中,测试人员很大的一项任务仍然是编写各种测试用例,要真正的提高测试效率,就要提高测试脚本的通用性,减少测试脚本的变化[2] [4]。常见的嵌入式智能设备测试工具(比如TestQuest)使用图像比对来判断目标设备的状态, 这种方法虽然实现了非侵入性的测试,但是存在两个问题:

  图片的抓取和传送消耗了大量测试资源.不同手机的用户界面风格变化很大,这使得测试脚本在用来进行新设备的测试时需要对脚本进行维护.然而,实际的设备中,当重要的事件发生时,系统会产生敏感事件来激励相关模块进行处理.如果能够在测试过程中捕获这些敏感事件,就能更加高效的进行测试. 并且,只要操作系统相同,敏感事件的捕获方式也是一样,测试用例不会因为界面的变化而变化。本文用目标设备Agent抽象和捕获测试过程中的敏感事件,并将敏感事件发送给测试控制Agent。而测试控制Agent收到敏感事件后,根据自己的知识,采取相应的动作的机制(如异常处理,重新调度测试等)加以处理。这正好可以作为Agent的推理规则,用Agent的智能性来屏蔽测试过程的复杂性。此外,考虑到目标设备处于复杂的网络环境中,我们利用网络环境Agent来控制目标设备所处的网络信号,从而实现对设备所处网络环境的控制。[page]

  3 基于Agent的测试系统

  3.1总体结构

  测试系统的最终目标是实现一个移动数字终端的自动化测试平台,能够对移动数字终端上的系统软件和应用层软件建立模块化、可重用的测试脚本库,提高各种黑盒测试的效率,自动化测试结果的生成,并实现测试结果的回放。

  图1. 测试系统的整体架构

  如图1所示,测试平台分为四层,包括用户接口层,测试控制层,通讯层和设备Agent层。 其中,过程监控模块,测试环境控制模块和设备Agent层采用Agent的思想进行设计,以更好的支持嵌入式设备的测试。

  3.2系统基本执行流程

  测试过程是对真实用户使用手机时“输入-反馈”模型的一个模拟。

  系统的基本的使用用例如下,首先用户通过脚本编辑器或者虚拟手机创建测试脚本并进行基本的配置,然后过程监控模块调度脚本开始执行,当脚本解释器解释执行脚本语句时,脚本解释器通常使用通讯模块向手机发送模拟按键,然脚本解释器进入等待状态,目标设备Agent从通讯模块得到按键,执行按键动作,截取屏幕并返回给测试控制Agent,或者如果手机有敏感世事件的发生(如来电,短信,异常等)也会反馈给测试控制Agent,测试控制Agent接到数据,再次激励脚本运行,并同时将测试结果输入存入测试资源库。脚本继续运行下面的语句,直到运行结束。

  3.3目标设备Agent

  目标设备Agent驻留在被测试的智能设备中,实现对目标设备的建模。本系统中它接收从PC机中接收到的控制命令,然后在智能设备中进行相应的操作,包括模拟键盘事件,截取屏幕并返回给PC,以及根据知识库中的配置的测试目标,通过推理,有所选择的将必需的状态信息主动通知测试宿主机。

  3.3.1设备Agent 依赖的决策规则

  系统事件报告决策规则(SERD-RULE) 这个决策规则决定设备Agent在获取到状态信息时,是否将状态信息反馈给上层系统。异常处理规则(EM-RULE)这个决策规则决定了当Agent发现测试中出现异常,要采取的处理方式。[page]

  3.3.2Agent 属性目标设备Agent具有下面的属性。

  自主性目标设备Agent使得测试用户无需关注设备的细节,它是设备功能和状态的一个很好的抽象,通过目标代理Agent,上层测试框架只需要执行相应的虚拟操作,则目标设备Agent会自动将这些虚拟操作映射为对手机的实际操作,并且手机的响应和其它状态也能够自动的反馈给客户,这使得上层测试和底层的设备具体操作无关。

  智能性当目标设备Agent获取到一个变化的被测系统状态或信息时,它会根据推理规则,仅仅把和本次目标相关的信息发送给测试控制Agent。目标设备Agent还能够根据异常处理规则,合理的处理测试中出现的异常。

  3.4 测试控制 Agent测试控制Agent 实现了对测试过程的建模。它主要实现三个目标:

  在测试过程中,对测试人员感兴趣的事件进行捕获,当这些敏感事件发生后,系统立刻执行预定义的动作,并为测试提供准确和详尽的日志。

  通过和脚本解释器交互,实现异步的事件通知和交互测试用例的执行。

  处理测试过程中的异常,使得测试过程可以自我修复,进而多个脚本能够按照预先的调度正常运行。

  3.4.1 测试控制Agent的决策规则

  事件-条件-行动规则(ECA-RULE)这是测试控制Agent所依据的核心规则,它定义了某个测试所关心的事件,并根据比对条件,采取相应的动作。异常处理规则(EM-RULE)测试控制Agent也遵守异常处理规则,它能够检测测试过程中发生的异常事件,并执行相应的解决方案,使得测试能够顺利的进行。

  3.4.2 测试控制Agent 的属性

  <1>自主性:自主性使得测试人员无需过分关注测试的细节,测试人员仅仅需要选择测试目标,测试控制Agent就能根据知识库中的信息,自动生成ECA规则表,并在脚本运行时,按照ECA规则,捕捉敏感的事件并执行相应的操作。

  <2>智能性:测试控制Agent能够根据用户选择的测试目标,自动生成ECA规则表,并根据ECA规则,进行推理并采取相应的动作。测试控制Agent还能根据异常处理规则来处理测试过程中发身的异常,保障测试过程的自动,平稳进行。

  3.5 网络环境Agent

  网络环境Agent 实现了对网络环境的模拟和控制。为了测试手机的射频性能,通常使用基站模拟系统来提供设备所处的无线网络环境,并且利用编程接口,通过软件对设备的环境进行控制,使得复杂网络环境下对目标设备的测试成为可能。

  4 系统评估

  为了评价本系统的有效性,我们设计了一个比较实验。试验在信息产业部泰尔实验室真实的测试项目中进行。我们将测试工程师分为两组,第一组使用本文的系统MobileTest进行测试,第二组使用业界着名的TestQuest Pro 进行测试。测试的依据是中国通讯行业标准的数字移动台测试部分。测试的内容是根据这两个系统各自已经建立好的回归测试用例对新的智能手机进行回归测试,从而比较这两个测试工具的测试效率和脚本的可维护性。

  自动化的测试用例

  的比例 TestQuest MobileTest

  功能测试 71% 61%

  压力测试 42% 47%

  多状态测试 38% 68%

  多任务测试 25% 35%

  临界测试 29% 61%

  自动化比例总计 38% 52%

  测试时间(日) 18 15

  实验度量了两个工具在测试不同种类的测试用例时,自动化执行的用例所占的百分比。从表中可见,虽然TestQuest 在功能测试上有更高的自动化率,在压力测试,多状态测试,多任务测试,临界测试和总计中,MobileTest有更好的测试覆盖率。这是因为在后四种测试中,测试用例需要不断追踪系统的状态,使用图片比对机制的TestQuest 很难完成这些工作,而MobileTest 却能使用Agent返回的敏感事件来进行处理。此外,MobileTest 完成测试任务的时间时15天,比TestQuest 的测试效率要高。[page]

  5 结论

  本文提出了一个基于Agent技术的嵌入式智能设备的测试方法,它用Agent技术对嵌入式智能设备测试过程中的被测试设备,测试者和网络环境进行模拟和控制,很好的屏蔽了嵌入式智能设备的复杂性,提高了测试的效率和脚本的可重用性。将来的研究工作中,我们会进一步拓展整个测试系统,使之能够支持整个测试的生命周期。

  本文作者的创新点:本文将软件Agent技术引入到嵌入式智能设备的自动化测试中,利用Agent的特性,很好的屏蔽了嵌入式智能设备测试中,测试者,待测设备,网络环境的复杂性,提高了自动化测试的效率。

  6参考文献

  [1]Jeongeun Choi, Byoundju Choi: Test Agent System Design [A]. Ewha Womans University, Proceedings of 1999 IEEE International Fuzzy System Conference Proceedings, pp326-327, 1999.

  [2]何友全:软件测试方法与技巧[J].微计算机信息,2000

  [3]Yu Qi, David Kung, Eric Wong: An Agent-based Testing Approach for Web Applications [A]. Proceedings of the 29th Annual International Computer Software and Application Conference, pp1-3, 2005.

  [4]古乐,史九林. 软件测试技术概论 [M].清华大学出版社. 2004

关键字:测试  嵌入式智能设备  测试控制  网络环境  异常处理 引用地址:关于嵌入式智能设备的测试方法的研究

上一篇:IxLoad在WAP网关系统测试中的应用
下一篇:R&S的WiMAX全系列测试解决方案

推荐阅读最新更新时间:2024-03-30 22:13

YouTube或正在测试iOS的“夜间模式”
    新浪手机讯 1月17日上午消息,外媒报道称,YouTube最近可能正在测试iOS的“夜间模式”功能,该功能已经更新到YouTube应用iOS版本13.01.4中。   在去年,YouTube在PC端上线了“夜间模式”功能,该功能可以让网站的背景变为黑色或者暗灰色,以减少反光,并剔除了一些视觉元素,整体上更适合用户夜间使用。 YouTube的夜间模式   在本周,Reddit用户Dean Cobb发现了这个功能,但此功能并不是面向所有用户开放:已经更新到v.13.01.4的部分用户,将YouTube升级到13.01.4版本后,可能会看到“夜间模式”开关。   有用户表示,他们在进行了应用更新之后,找到了“夜间模式”的开关;部
[手机便携]
安捷伦科技展台隆重亮相第九届高交会美国展区
深圳,2007年10月12日---- 全球领先的测量公司安捷伦科技(NYSE: A)今天参加了在深圳会展中心盛大举行的第九届中国国际高新技术成果交易会(高交会)。安捷伦科技公司的展台在此次高交会的美国展区隆重亮相。 此次高交会为期六天,吸引了众多国内外知名厂商的积极参与。作为全球领先的测量公司,安捷伦科技公司在此次展会上集中展出了安捷伦在近些年所推出的多种最新的测试仪器、系统与解决方案,具体包括无线通信测试领域、射频测试、元器件测试、光通信测试、IPTV测试及高速数字信号测试等领域的测量测试产品及解决方案。 其中无线通信测试领域的测量测试解决方案,如“安捷伦WiMAX 全面测试解决方案”、“安捷伦TD-SCDMA 全面测试解决方案
[焦点新闻]
电机瞬态测试的核心关键“同步性”
说到电机试验,大家往往想到的都是如何保证测试精度,会用到高精度的测量仪器设备、传感器等。但随着电机行业的发展,特别是矢量变频控制等电机控制技术的日益成熟,测试人员需要对电机的瞬态特性进行分析,这时候就要注意到一个新的测试要点——如何保证测试的同步性。 为什么要关注测试的同步性? 所谓同步性,即在电机测试中确保每个测量参数是在同一时间点下采集的,主要体现在转速、位置、扭矩、电压、电流、温度、振动等参数的同步采集。 测试的同步性对结果的影响最明显在于效率测量。如果转速n、扭矩T等机械参数和电压U、电流I等电参数不在同一时间点下采集,那么根据效率计算公式计算出来的结果也是错误的。   电机效率计算公式
[嵌入式]
燃料电池测试方法及对其构建灵活的测试系统
  根据国际能源机构的一项调查,亚洲与澳大利亚2004年用作能源的石油已达1.65万亿升。该调查还显示,自1990年起,石油的需求量每年都在上升,致使这种已近枯竭的自然资源价格不断攀升。燃料电池作为一种替代能源,有望用于解决能源紧张的问题。   太空旅行是最早采用燃料电池技术的产业。早在1960年初,通用电子公司制造的质子交换膜(PEM)燃料电池就曾为NASA的GemiNI PXI技术开发出无线电接收机NI和阿波罗太空舱的电力系统提供能源。从那时开始,燃料电池技术有了长足的进步,其应用如今已遍及从笔记本电脑和MP3播放器到混合动力汽车甚至建筑物等各个领域。随着燃料电池的应用不断增多,设计工程师不但需要了解这种技术的原理,还应熟悉
[测试测量]
燃料电池<font color='red'>测试</font>方法及对其构建灵活的<font color='red'>测试</font>系统
汽车发电机电压调节器多功能电子测试仪的研究与开发
0 引言     汽车发电机电压调节器,是汽车供电系统的一个关键部件,其用途是稳定汽车发电机的输出电压,使其不受发电机转速变化和负载变化的影响。该产品的质量状况的好坏,直接影响到车辆的正常行驶。     多年来,对汽车发电机电压调节器的电气性能测试,一直沿用在发电机测试台上进行测试的传统方法。由于整个测试系统设备庞大、价格昂贵、耗电量大、操作复杂。所以只有调节器生产厂具备该测试系统,一般的使用单位和汽车电器维修单位都不具备使用该测试系统的条件。所以对汽车发电机电压调节器的电气性能测试,一直是困扰各电机厂及维修市场的难题。     汽车发电机电压调节器多功能电子测试仪器,是多年来汽车行业不论是电机厂还是维修市场,都急需的电气性能测试
[嵌入式]
基于FPGA的RS485接口误码测试仪的设计
  摘 要: 介绍了一种基于FPGA的误码测试仪的设计原理、实现过程及调试经验。该误码测试系统使用RS485接口,具有原理简单、接口独特、功能丰富等特点,系统具有较好的可扩展性。   在数字通信中,误码率BER(Bit Error Rate)是衡量通信系统质量的一项重要指标。无论是设备故障、传播衰落、码间干扰、临近信道干扰等因素都可能造成系统性能恶化甚至造成通信中断,其结果都可通过误码的形式表现出来 。因此,误码测试仪是现代通信系统的主要测试仪器之一。   目前,通常使用的传统误码测试仪虽然具有测试内容丰富、测试结果直观等优点,但是由于通信系统复杂程度的不断增加,接口形式变化多样以及一些非标准码率的应用,使得传统误码测试仪的使
[嵌入式]
基于FPGA的RS485接口误码<font color='red'>测试</font>仪的设计
振动发电机测试平台设计
传感器网络近来已延伸至各种环境及工业数据采集应用中,传感器节点常用在不易接近和维护成本较高的地方。   依靠部分电路激活或看门狗,新一代 微控制器 能够实现仅几微安的功耗。低功耗的感应器件经常应用到基础设施(例如桥梁)、机械(例如电梯、马达、汽车部件)中,甚至可以穿戴在人体(例如病人、运动员)上,在这类应用中,这些感应器件可以采集振动能量。自然运动或传输振动所产生的机械能转换成电能。这种电能足以驱动传感器节点,如果以电池作为主电源,则至少有助于延长电池续航能力。   通过振动能量供电的能量采集器采用永磁材料与绕组来获取能量,这就是通常所说的振动式发电机(VEPG)。普莱默集团(Premo Group)正在开发微型VEPG,用
[模拟电子]
振动发电机<font color='red'>测试</font>平台设计
在线氨氮的测量方法
氨氮国内的主要方法主要有:水杨酸比色法,纳氏试剂比色法以及氨气敏电极法。简单的说就是两类:比色法和电极法。国外基本上都是采用氨气敏电极法。 氨气敏电极法介绍 1.原理 在pH值大于11的环境下,铵根离子向氨转变,氨通过氨敏电极的疏水膜转移,造成氨敏电极的电动势的变化,仪器根据电动势的变化测量出氨氮的浓度。 2.检测步骤 用新的水样冲洗测量水样、试剂体积的容器和电极安装管。 使用蠕动泵进样。水样并不直接与蠕动泵管接触,有一个空气缓冲区。进样的体积由一可视测量系统控制。 与进样相同,辅助试剂也通过蠕动泵投加,并由可视测量系统控制加药体积。通过鼓泡混合水样和试剂。由测量系统自动控制反映时间。残液由蠕动泵排出。在用户自定义的测量
[测试测量]
小广播
添点儿料...
无论热点新闻、行业分析、技术干货……
最新测试测量文章
换一换 更多 相关热搜器件
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved