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规则,捕捉敏感的事件并执行相应的操作。