关键词:
软件测试
SDN管理系统
Openflow协议
测试用例
摘要:
随着计算机网络的快速发展,大数据正逐渐成为当前移动互联网等业务领域的研究热点,其面临的海量数据处理更是对网络提出了越来越高的要求。SDN网络是为了解决传统网络难以满足云计算、大数据以及相关业务提出的灵活的资源需求的问题而提出的一种新型的网络结构。SDN开放接口和逻辑上集中的控制层面可以支持对网络资源的灵活调度,标准统一的接口能够实现对网络设备的虚拟透明。为方便SDN网络管理,解决SDN管理问题,公司特推出一种B/S架构的SDN管理系统,而对该管理系统的验证工作对保证其质量起着非常关键的作用。为了对该管理系统进行充分的验证测试,需要对SDN网络的基础协议Openflow和基本测试方法有清晰的理解和认识。与传统网管软件对网络设备实行直接管理方式不同,SDN对网络设备进行集中式管理,充分利用Openflow协议和软件定义网络的特点,SDN管理系统通过调用Controller提供的丰富的RESTful API接口,实现对网络中OF交换机的增删改OF实例、流表项、Group表、Meter等配置下发以及读取网络状态信息等功能。本篇论文首先简要介绍了 Openflow协议基础知识、软件测试基本技术和SDN管理系统的特点,然后针对SDN管理系统不同于传统网络管理系统的特点,分析了其验证测试基本需求和高级需求,以从无到有开始创建OF实例,搭建SDN网络的基本步骤为基础,根据系统设备管理、OF流管理、租户网络管理等模各自的不同特点,设计相应测试用例,主要为基本需求功能模块,测试用例主要包括测试用例号、前置条件、操作步骤和预期结果几个重要内容,然后通过分别执行各个模块的测试用例,将实际验证结果与预期结果相比较,通过比较Controller接口信息、软件数据库信息、软件页面显示信息和OF交换机设备配置信息是否一致,判定软件功能是否正确。基于Openflow的SDN管理系统测试过程表明,严格按照需求规格说明书设计详细测试用例,能够发现系统和需求中的大量软件设计和实现缺陷,帮助测试人员设计更合理的测试方法以更多的发现软件缺陷,通过修改缺陷提高软件质量,达到用户要求的质量标准。其次,针对网络管理系统功能基于网络协议而实现,与网络设备直接交互等特点,在进行网管系统测试之前,对其基础协议有清晰的认识和理解是高效率高质量执行软件测试的必要条件,也是保证网管软件高质量的必要条件。另外,在执行测试过程中,测试人员应严格遵守测试基本原则,认真记录所有发现的软件缺陷,在与开发人员充分沟通的基础上修改软件缺陷,提高软件质量。最后,由于当前测试环境中Controller设备缺陷和OF交换机缺陷,SDN管理系统并不能够完全实现Openflow协议中规定的所有功能需求,随着SDN网络的不断发展,Openflow协议的不断改进,Controller设备和OF交换机设备功能的不断完善,SDN管理系统也会随之不断完善,为SDN网络操作员和用户提供更快捷的部署操作和更简单易用的扩展功能。