论文部分内容阅读
随着电信业务的快速发展,电信管理网络规模日渐扩大,管理日趋复杂,网络管理软件的开发也日趋复杂。随着软件工程体系的不断规范化和标准化,对软件质量的要求越来越高,软件测试作为软件开发生命周期中不可缺少的一个阶段也越来越受到重视。在软件测试实施过程中,存在大量重复的手工操作,这些操作完全可以实现自动化,从而尽快的完成测试,节省人力、开发时间及成本。自动化测试是软件测试技术发展的趋势。 中兴通讯的统一网管系统基于J2EE架构,在测试过程中,存在如下问题:测试环境搭建困难;客户端界面测试、服务端测试困难;测试效果不容易测量;人工测试居多,回归测试困难等。通用测试工具往往只能满足单方面的测试需求,且价格昂贵。因此,迫切需要搭建一个自动测试平台,以方便的进行回归测试和验收测试,并克服通用测试工具的与测试需求不吻合的缺点。 为满足自动测试平台分布式、松耦合、易于部署的要求,平台的测试服务端和客户端选用消息通信方式。目前的分布式系统消息通信主要分为基于远程过程调用(RPC)的通信和面向消息的(MOM)通信。本文比较了这两种通信方式的特点和适用场合,选用面向消息的中间件产品JBossMQ作为平台的通信组件,由此引入J2EE消息机制JMS(JavaMessageService)规范完成消息通信。JMS作为一种规范,并不是具体产品的实现,已经成为企业异步应用中事实上的工业标准,可以有效的满足异构条件下的分布通信需求。 本文基于JMS的消息结构,定义了自己的消息结构体,并定义了其解析分发过程,有效的满足了平台的通信需求。在利用消息进行测试任务的分发过程中,执行效率是自动测试平台的一个重点。本文参考当前常用任务调度策略,基于自动测试平台的特殊性,考虑了调度的紧迫性需求、公平性需求和效率的需求,提出了一种非抢占式的动态优先级的公平调度算法。 最后,搭建了一个测试环境,利用消息进行通信,模拟了实际测试的执行过程,验证了调度策略的有效性。