基于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 进行测试。测试的依据是中国通讯行业标准的数字移动台测试部分。测试的内容是根据这两个系统各自已经建立好的回归测试用例对新的智能手机进行回归测试,从而比较这两个测试工具的测试效率和脚本的可维护性。
![](http://m.amcfsurvey.com/uphotos/fetch/20130729/148698_2_0.jpg)
实验度量了两个工具在测试不同种类的测试用例时,自动化执行的用例所占的百分比。从表中可见,虽然TestQuest 在功能测试上有更高的自动化率,在压力测试,多状态测试,多任务测试,临界测试和总计中,MobileTest有更好的测试覆盖率。这是因为在后四种测试中,测试用例需要不断追踪系统的状态,使用图片比对机制的TestQuest 很难完成这些工作,而MobileTest 却能使用Agent返回的敏感事件来进行处理。此外,MobileTest 完成测试任务的时间时15天,比TestQuest 的测试效率要高。
5 结论
本文提出了一个基于Agent技术的嵌入式智能设备的测试方法,它用Agent技术对嵌入式智能设备测试过程中的被测试设备,测试者和网络环境进行模拟和控制,很好的屏蔽了嵌入式智能设备的复杂性,提高了测试的效率和脚本的可重用性。将来的研究工作中,我们会进一步拓展整个测试系统,使之能够支持整个测试的生命周期。
本文作者的创新点:本文将软件Agent技术引入到嵌入式智能设备的自动化测试中,利用Agent的特性,很好的屏蔽了嵌入式智能设备测试中,测试者,待测设备,网络环境的复杂性,提高了自动化测试的效率。
linux操作系统文章专题:linux操作系统详解(linux不再难懂)
评论