oftest是一个用python语言编写的专门用于openflow switch测试的框架,并且在这个框架中加入一些测试案例。同时,这个框架是基于python版本的单元 测试。
下面主要介绍这个测试框架、框架运行的基本操作以及针对如何添加测试加一些例子。
前提:
假设我们已经熟悉python语言,并且对于单元模块都已经熟悉,或者是现在想熟悉,那么我们就开始介绍了
- 继承单元模块的思想,因为我们要进行case或者是subcase测试
- oftest的安装和卸载时必须要掌握的
- runTest提供了core测试的功能
- 可以使用assertTrue和assertEqual来检查测试的状态
结构简介
下面就是OfTest的系统结构
要点:
- test host包围了switch under test(待测的交换机SUT)
- OfTest的python代码运行在test host上
- SUT包括一个控制平面和一系列数据平面连接
- OfTest在test host上的controller interface (控制器接口)和dataplane interface (数据平面接口)与SUT连接
- (重要)控制器和数据平面的部分在这个框架中已经用python实现
- OfTest的dataplane object部分可以完成(其实就是模拟数据平面)数据平面的数据接收和发送(by polling轮询 or callback回调),这个object是通过控制连接在SUT上的主机接口进行实现的
- OfTest的controller object部分完成控制器的功能,完成与SUT的openflow信息的交互
未完待续。。。