本发明专利技术公开了一种在自动化测试中实现设备模式切换的方法和装置,该方法包括:抽象出设备的基本特征作为设备控制库的基类,所述基类包括内容模式的切换控制命令和工作模式的切换控制命令;根据设备输出的目标模式,调用所述基类中内容模式的切换控制命令或工作模式的切换控制命令,得到具体化的设备;在设备测试过程脚本化后,执行所述脚本的测试命令,获取测试输出结果,所述脚本继承了所述具体化的设备的控制命令。所述装置包括:基类获取单元、具体化设备单元以及测试结果输出单元。本发明专利技术提供的方法和装置,使用户可以调用基类中的控制方法具体化某种类型的设备,并提供接口供脚本化过程使用,使控制设备更方便灵活,且具有较好的扩展性。
【技术实现步骤摘要】
本专利技术涉及计算机网络通信领域,尤其涉及一种在自动化测试中实现设备模式切 换的方法和装置。
技术介绍
自动化测试过程中,需对设备(包括测试设备和辅助设备)进行自动控制,但是每 种设备都有其独有的特征。在传统的自动化测试中,自动控制不同类型的设备都需要有不 同的处理过程,用户在编写自动化脚本过程中也需考虑每种设备的具体控制细节,这样给 用户带来了极大的不方便,而且自动化测试框架中测试设备和辅助设备种类繁多,如果每 一类型设备维护一种处理方式,会浪费大量资源,且效率很低。所以,现有技术存在的问题如下(1)需要开发和维护针对每种类型设备的处理方式,效率低、占用时间长,且自动 化上层框架和用户自动化脚本过程中都需要考虑具体设备的控制细节,开发和维护都很不 方便;(2)扩展性差,有些具体处理方式无法对用户透明,用户不能根据自己的需要添加 相应处理方式,易用性不强。
技术实现思路
本专利技术提供一种在自动化测试中实现设备模式切换的方法和装置,用以解决现有 技术中存在的具体自动化过程中对设备各种情况的依赖且扩展性差的问题。为达到上述目的,本专利技术提供的一种在自动化测试中实现设备模式切换的方法, 包括A、抽象出设备的基本特征作为设备控制库的基类,所述基类包括内容模式的切换 控制命令和工作模式的切换控制命令;B、根据设备输出的目标模式,调用所述基类中内容模式的切换控制命令或工作模 式的切换控制命令,得到具体化的设备;C、在设备测试过程脚本化后,执行所述脚本的测试命令,获取测试输出结果,所述 脚本继承了所述具体化的设备的控制命令。具体的,上述在抽象出设备的基本特征作为设备控制库的基类时,得到内容模式 的切换控制命令的具体过程为注册设备的内容模式,所述每个内容模式具有自身的特征信息,该特征信息包括 内容模式的切换控制命令,内容模式名称、内容模式匹配方式、内容模式内容、内容模式优 先级、内容模式匹配位置及内容模式开关;根据注册的内容模式,生成预期交互expect模式串,该expect模式串中包含内容 模式的切换控制命令及内容模式的其它特征信息。其中,所述内容模式的特征信息被记录在特征信息数组中,该特征信息数组具有一对应的索引映射表,该索引映射表以所述内容模式名称为索引,用于记录内容模式的特 征信息在特征信息数组中的存储位置,其中每个内容模式名称对应一个索引号。需要说明的是,当删除一个或多个内容模式时,根据待删除内容模式的索引号查 找到其在特征信息数组中的位置,将该内容模式删除;当删除的内容模式不是所述索引映 射表的最后一条时,在删除完成后重新排序所述特征信息数组以及所述索引映射表。所述步骤B中根据设备输出的目标模式,调用所述基类中的内容模式的切换控制 命令具体为跟踪设备的输出,获取所述设备输出的目标内容模式;将所述目标内容模式与基类中的所述expect模式串进行匹配;匹配成功时,调用所述基类中expect模式串中的内容模式切换的控制命令。具体的,上述在抽象出设备的基本特征作为设备控制库的基类时,得到工作模式 的切换控制命令的具体过程为注册设备的工作模式,所述工作模式的特征信息包括匹配工作模式的方式和工作 模式内容;添加已注册的相邻工作模式之间切换所需要的切换控制命令;将注册的所有工作模式构建为带权有向图;根据注册时工作模式的工作模式内容,获取当前设备的工作模式;通过迪杰斯特拉算法求出从当前工作模式到目标工作模式的最短路径;根据所述最短路径内相邻工作模式间的切换控制命令,生成expect模式串,该 expect模式串包含相邻工作模式间的切换控制命令及工作模式的特征信息。其中,所述工作模式的特征信息被记录在又一特征信息数组中;所述相邻工作模式之间切换所需的切换命令被记录在一个二维数组中,该二维数 组的索引为相邻工作模式的模式名称,并根据该索引获取自身存储的相邻工作模式之间切 换所需的切换命令所在的存储位置。所述步骤B中根据设备输出的目标模式,调用所述基类中的工作模式的切换控制 命令具体为跟踪设备的输出,获取所述设备输出的目标工作模式;将所述目标工作模式与所述基类中的expect模式串进行匹配;匹配成功时,调用所述基类中expect模式串中的工作模式切换的控制命令。本专利技术提供的方法进一步具有以下特点所述基类还包括自动连接设备控制命令、执行设备控制命令、获取上一次执行命 令的设备输出控制命令、设置设备提示符控制命令、设置向设备发送字符的速度控制命令、 设置对设备操作的字符编码控制命令。进而,所述步骤B进一步包括根据设备输出的内容,调用所述基类中的自动连接 设备控制命令、执行设备控制命令、获取上一次执行命令的设备输出控制命令、设置设备提 示符控制命令、设置向设备发送字符的速度控制命令、设置对设备操作的字符编码控制命 令中的一种或几种控制命令,得到具体化的设备。本专利技术提供一种在自动化测试中实现设备模式切换的装置,包括基类获取单元,用于抽象出设备的基本特征作为设备控制库的基类,所述基类包括内容模式的切换控制命令和工作模式的切换控制命令;具体化设备单元,用于根据设备输出的目标模式,调用所述基类中内容模式的切 换控制命令或工作模式的切换控制命令,得到具体化的设备;测试结果输出单元,用于在设备测试过程脚本化后,执行所述脚本的测试命令,获 取测试输出结果,所述脚本继承了所述具体化的设备的控制命令。其中,所述基类获取单元包括内容模式切换控制命令获取子单元和工作模式切 换控制命令获取子单元; 所述内容模式切换控制命令获取子单元,用于注册设备的内容模式,并根据注册的 内容模式,生成预期交互expect模式串,该expect模式串中包含内容模式的切换控制命令;所述工作模式切换控制命令获取子单元,用于注册设备的工作模式,并添加已注 册的相邻工作模式之间切换所需要的切换控制命令,将注册的所有工作模式构建为带权有 向图,在获取当前设备的工作模式后,通过迪杰斯特拉算法求出从当前工作模式到目标工 作模式的最短路径,根据所述最短路径内相邻工作模式间的切换控制命令,生成expect模 式串,该expect模式串包含相邻工作模式间的切换控制命令。本专利技术提供的装置进一步具有以下特点所述基类还包括自动连接设备控制命 令、执行设备控制命令、获取上一次执行命令的设备输出控制命令、设置设备提示符控制命 令、设置向设备发送字符的速度控制命令、设置对设备操作的字符编码控制命令。进而,所述具体化设备单元还用于根据设备输出的内容,调用所述基类中的自动 连接设备控制命令、执行设备控制命令、获取上一次执行命令的设备输出控制命令、设置设 备提示符控制命令、设置向设备发送字符的速度控制命令、设置对设备操作的字符编码控 制命令中的一种或几种控制命令,得到具体化的设备。与现有技术相比,本专利技术具有以下优点(1)本专利技术提供的方法抽象了所有设备的基本特征,用户可以调用这些特征接口 具体化某类设备,并可根据需要添加相应处理方式,保证扩展性强,易用性好;(2)自动化测试上层框架和脚本化过程中不需要考虑具体设备的控制细节,处理 方式简单,效率高。附图说明为了更清楚地说明本专利技术实施例或现有技术中的技术方案,下面将对实施例或现 有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本 专利技术本文档来自技高网...
【技术保护点】
一种在自动化测试中实现设备模式切换的方法,其特征在于,包括:A、抽象出设备的基本特征作为设备控制库的基类,所述基类包括内容模式的切换控制命令和工作模式的切换控制命令;B、根据设备输出的目标模式,调用所述基类中内容模式的切换控制命令或工作模式的切换控制命令,得到具体化的设备;C、在设备测试过程脚本化后,执行所述脚本的测试命令,获取测试输出结果,所述脚本继承了所述具体化的设备的控制命令。
【技术特征摘要】
【专利技术属性】
技术研发人员:康瑜,
申请(专利权)人:北京天融信网络安全技术有限公司,
类型:发明
国别省市:11[中国|北京]
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。