CN116094973B - 用于用户端设备广域网管理协议的测试方法和装置 - Google Patents
用于用户端设备广域网管理协议的测试方法和装置 Download PDFInfo
- Publication number
- CN116094973B CN116094973B CN202310205725.3A CN202310205725A CN116094973B CN 116094973 B CN116094973 B CN 116094973B CN 202310205725 A CN202310205725 A CN 202310205725A CN 116094973 B CN116094973 B CN 116094973B
- Authority
- CN
- China
- Prior art keywords
- parameter
- test case
- template
- generating
- component
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/18—Protocol analysers
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/50—Network service management, e.g. ensuring proper service fulfilment according to agreements
- H04L41/5041—Network service management, e.g. ensuring proper service fulfilment according to agreements characterised by the time relationship between creation and deployment of a service
- H04L41/5048—Automatic or semi-automatic definitions, e.g. definition templates
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/50—Network service management, e.g. ensuring proper service fulfilment according to agreements
- H04L41/5041—Network service management, e.g. ensuring proper service fulfilment according to agreements characterised by the time relationship between creation and deployment of a service
- H04L41/5054—Automatic deployment of services triggered by the service manager, e.g. service implementation by automatic configuration of network components
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/14—Arrangements for monitoring or testing data switching networks using software, i.e. software packages
Abstract
本发明涉及一种用于用户端设备广域网管理协议的测试方法和装置,涉及软件测试技术领域,其方法包括:从自动配置服务器的参数库中获取用户端设备参数树,依据每个用户端设备参数树的叶子节点生成具有指定格式的参数数据,将生成的每个参数数据按照操作类型和读写属性切分成不同的业务组件,操作类型包括添加对象、删除对象、写入参数值和读出参数值;根据业务组件生成测试用例组件模版,测试用例组件模版包含模版组件参数和参数值校验策略;按照指定策略,给一个或多个测试用例组件模版中的每个可变参数的节点生成一个可选参数值;根据可选参数值和节点情况生成测试用例,以解决现有技术中手动添加测试用例,扩展性差、效率低的问题。
Description
技术领域
本发明涉及软件测试技术领域,具体涉及一种用于用户端设备广域网管理协议的测试方法和装置。
背景技术
近年来,移动通信等无线业务迅速发展,宽带上网业务日益增长,对于各种网络设备的远程管理有了更多需求,即便家庭部署和办公场所部署各种微基站、无线热点,自TR069诞生后,不断扩展的数据模型并且给测试的工作增加了很多细节要求。
TR069要求支持各种应用场景的测试,现有的数据模型从TR098到TR181的标准中一直在不断扩展,需要以此为基础测试数据模型中定义的数据节点,即便用可视化的添加方式也需要一个个地添加,不利于新业务扩展后的测试,需要手动集成一次或者多次,浪费了开发和测试人员的时间;同时由于新的业务系统的扩展需要反复测试各种业务模板的下发,测试系统稳定性的各项要求,而大型的自动化测试系统成本很高、推广难,而中小企业缺少提升测试效率的相关工具和系统,尤其是ACS在传统中操作的cpe作为嵌入式设备的测试过程也缺乏足够的便利,对于人员素质要求较高,诊断结果需要依赖较长的时间训练,不能够自动生成大量的测试用例,以覆盖到cpe对ACS系统下发的指令时足够多的参数组合要求,迫切需要为全自动化积累一些测试用例和数据,需要快捷地构建可以满足白盒测试的测试用例,然后完成半自动化测试到全自动化的迁移。
现有技术只预配置了手动添加的模板,扩展性比较差,每新增一个测试用例,更多都是基于手动添加的,参数模板都需要提前手动设定,需要扩展到更多精细化测试时的成本高,人工成本会放大许多倍。
发明内容
本发明要解决的技术问题在于克服现有技术中手动添加测试用例,扩展性差、效率低的缺陷,从而提供一种用于用户端设备广域网管理协议的测试方法及装置。
第一方面,本发明公开实施例提供了一种用于用户端设备广域网管理协议的测试方法,包括:
从自动配置服务器的参数库中获取用户端设备参数树,依据每个所述用户端设备参数树的叶子节点生成具有指定格式的参数数据,所述指定格式包括参数路径、参数格式和参数值,所述参数库用于存储所述用户端设备参数树,所述参数数据由所述用户端设备参数树的叶子节点生成;
将生成的每个所述参数数据按照操作类型和读写属性切分成不同的业务组件,所述操作类型包括添加对象、删除对象、写入参数值和读出参数值;
根据所述业务组件生成测试用例组件模版,所述测试用例组件模版包含模版组件参数和参数值校验策略;
按照指定策略,给一个或多个所述测试用例组件模版中的每个可变参数的节点生成一个可选参数值;
根据所述可选参数值和节点情况生成测试用例。
进一步可选的,还包括:将所述测试用例向用户终端设备下发,以便用户终端设备依据所述测试用例运行待测试软件;接收用户终端设备反馈的运行结果数据;根据参数值校验策略对运行结果数据进行验证。
进一步可选的,所述根据所述业务组件生成测试用例组件模版为:根据所述业务组件是否为操作类数据和叶子节点是否为可写类型生成测试用例组件模版。
进一步可选的,所述根据所述业务组件是否为操作类数据和叶子节点是否为可写类型生成测试用例组件模版包括:依次判断每个所述业务组件的类型是否为操作类数据;对于操作类的业务组件,依次将操作类的业务组件生成第一测试用例组件模版,所述第一测试用例组件模版包括添加对象、删除对象和实例索引选项;对于非操作类的业务组件,根据相应叶子节点的参数类型生成模版组件参数;判断相应叶子节点是否为可写类型;若所述相应叶子节点不是可写类型,则生成参数值值获取类型和参数值名称获取类型的业务模版组件,并绑定所述参数树父节点Object的路径和实例索引;若所述相应叶子节点是可写类型,则根据所述相应叶子节点的参数类型,生成可变参数的参数值设置模板组件参数和参数值校验策略,与至少一个叶子节点组成一个第二测试用例组件模板。
进一步可选的,所述根据所述可选参数值和节点情况生成测试用例为:根据所述可选参数值和节点情况采用汇聚的方式或者分散的方式生成测试用例。
进一步可选的,所述根据所述可选参数值和节点情况采用汇聚的方式或者分散的方式生成测试用例包括:判断同一父节点的叶子节点的业务组件是否生成汇聚类型;若否,则选取至少一个节点参数生成第一测试用例,所述第一测试用例一次只独立操作一个叶子节点;若是,则将关联的多个叶子节点的设置指令汇聚为一个第二测试用例,所述第二测试用例用于一次性下发、生成多个由不同叶子节点的不同参数值相互组合。
进一步可选的,所述参数值校验策略包括通过响应码和参数值进行校验。
第二方面,本发明公开实施例提供了一种用于用户端设备广域网管理协议的测试装置,包括:
参数获取模块,用于从自动配置服务器的参数库中获取用户端设备参数树,依据每个所述用户端设备参数树的叶子节点生成具有指定格式的参数数据,所述指定格式包括参数路径、参数格式和参数值,所述参数库用于存储所述用户端设备参数树,所述参数数据由所述用户端设备参数树的叶子节点生成;
业务组件获取模块,用于将生成的每个所述参数数据按照操作类型和读写属性切分成不同的业务组件,所述操作类型包括添加对象、删除对象、写入参数值和读出参数值;
测试用例组件模版生成模块,用于根据所述业务组件生成测试用例组件模版,所述测试用例组件模版包含模版组件参数和参数值校验策略;
可选参数值生成模块,用于按照指定策略,给一个或多个所述测试用例组件模版中的每个可变参数的节点生成一个可选参数值;
测试用例生成模块,用于根据所述可选参数值和节点情况生成测试用例。
第三方面,本发明公开实施例还提供一种计算机设备,包括:处理器、存储器和总线,所述存储器存储有所述处理器可执行的机器可读指令,当计算机设备运行时,所述处理器与所述存储器之间通过总线通信,所述机器可读指令被所述处理器执行时执行上述第一方面,或第一方面中任一种可能的实施方式中的步骤。
第四方面,本发明公开实施例还提供一种计算机可读存储介质,该计算机可读存储介质上存储有计算机程序,该计算机程序被处理器运行时执行上述第一方面,或第一方面中任一种可能的实施方式中的步骤。
本发明的实施例提供的技术方案可以具有以下有益效果:
本发明实施例提供的用于用户端设备广域网管理协议的测试方法和装置,从自动配置服务器的参数库中获取用户端设备参数树,依据每个用户端设备参数树的叶子节点生成具有指定格式的参数数据,参数数据由用户端设备参数树的叶子节点生成;将生成的每个参数数据按照操作类型和读写属性切分成不同的业务组件,根据业务组件生成测试用例组件模版,测试用例组件模版包含模版组件参数和参数值校验策略;按照指定策略,给一个或多个测试用例组件模版中的每个可变参数的节点生成一个可选参数值;根据可选参数值和节点情况生成测试用例,该方法从半自动化测试过程中积累测试用例,转换为业务模板,然后通过参数演化算法,生成大量适合TR069的业务测试的参数,可以快速地应用到新的数据模型的参数树节点要求,为培训测试人员对迁移到自动化测试的时候提供帮助,理解整个全自动测试的迁移流程和必要性,完整的测试场景和参数组合,依赖于全自动化,方便开发人员和测试人员便利地测试新扩展的业务,以完善系统的稳定性和健壮性。
附图说明
为了更清楚地说明本发明具体实施方式或现有技术中的技术方案,下面将对具体实施方式或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施方式,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1示出了一种用于用户端设备广域网管理协议的测试方法的流程示意图;
图2示出了另一种用于用户端设备广域网管理协议的测试方法的流程示意图;
图3示出了本发明公开实施例所提供的一种用于用户端设备广域网管理协议的测试装置的功能结构图;
图4示出了本发明公开实施例所提供的一种计算机设备的结构示意图。
具体实施方式
这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本发明相一致的所有实施方式。相反,它们仅是与如说明书中所详述的、本发明的一些方面相一致的装置和方法的例子。
实施例1
如图1所示,本发明公开实施例所提供的一种用于用户端设备广域网管理协议的测试方法的流程图,该方法包括:
S11:从自动配置服务器的参数库中获取用户端设备参数树,依据每个用户端设备参数树的叶子节点生成具有指定格式的参数数据,指定格式包括参数路径、参数格式和参数值,参数库用于存储用户端设备参数树,参数数据由用户端设备参数树的叶子节点生成。
S12:将生成的每个参数数据按照操作类型和读写属性切分成不同的业务组件,操作类型包括添加对象、删除对象、写入参数值和读出参数值。
S13:根据业务组件生成测试用例组件模版,测试用例组件模版包含模版组件参数和参数值校验策略。
S14:按照指定策略,给一个或多个测试用例组件模版中的每个可变参数的节点生成一个可选参数值。
S15:根据可选参数值和节点情况生成测试用例。
可以理解的是,本实施例提供的技术方案,从自动配置服务器的参数库中获取用户端设备参数树,依据每个用户端设备参数树的叶子节点生成具有指定格式的参数数据,参数数据由用户端设备参数树的叶子节点生成;将生成的每个参数数据按照操作类型和读写属性切分成不同的业务组件,根据业务组件生成测试用例组件模版,测试用例组件模版包含模版组件参数和参数值校验策略;按照指定策略,给一个或多个测试用例组件模版中的每个可变参数的节点生成一个可选参数值;根据可选参数值和节点情况生成测试用例,该方法从半自动化测试过程中积累测试用例,转换为业务模板,然后通过参数演化算法,生成大量适合TR069的业务测试的参数,可以快速地应用到新的数据模型的参数树节点要求,为培训测试人员对迁移到自动化测试的时候提供帮助,理解整个全自动测试的迁移流程和必要性,完整的测试场景和参数组合,依赖于全自动化,方便开发人员和测试人员便利地测试新扩展的业务,以完善系统的稳定性和健壮性。
实施例2
如图2所示,本发明公开实施例所提供的另一种用于用户端设备广域网管理协议的测试方法的流程图,该方法包括:
S21:从自动配置服务器的参数库中获取用户端设备参数树,依据每个用户端设备参数树的叶子节点生成具有指定格式的参数数据,指定格式包括参数路径、参数格式和参数值,参数库用于存储用户端设备参数树,参数数据由用户端设备参数树的叶子节点生成。
S22:将生成的每个参数数据按照操作类型和读写属性切分成不同的业务组件,操作类型包括添加对象、删除对象、写入参数值和读出参数值。
S23:根据业务组件是否为操作类数据和叶子节点是否为可写类型生成测试用例组件模版,测试用例组件模版包含模版组件参数和参数值校验策略。
其中,参数值校验策略包括通过响应码和参数值进行校验。
S24:按照指定策略,给一个或多个测试用例组件模版中的每个可变参数的节点生成一个可选参数值。
S25:根据可选参数值和节点情况采用汇聚的方式或者分散的方式生成测试用例。
S26:将测试用例向用户终端设备下发,以便用户终端设备依据测试用例运行待测试软件。
S27:接收用户终端设备反馈的运行结果数据。
S28:根据参数值校验策略对运行结果数据进行验证。
在一些可选实施例中,S23可以但不限于通过以下过程实现(图中未示出):
S231:依次判断每个业务组件的类型是否为操作类数据。
S232:对于操作类的业务组件,依次将操作类的业务组件生成第一测试用例组件模版,第一测试用例组件模版包括添加对象、删除对象和实例索引选项。
S233:对于非操作类的业务组件,根据相应叶子节点的参数类型生成模版组件参数。
S234:判断相应叶子节点是否为可写类型。
S235:若相应叶子节点不是可写类型,则生成参数值值获取类型和参数值名称获取类型的业务模版组件,并绑定参数树父节点Object的路径和实例索引。
S236:若相应叶子节点是可写类型,则根据相应叶子节点的参数类型,生成可变参数的参数值设置模板组件参数和参数值校验策略,与至少一个叶子节点组成一个第二测试用例组件模板。
在一些可选实施例中,S25可以但不限于通过以下过程实现(图中未示出):
S251: 判断同一父节点的叶子节点的业务组件是否生成汇聚类型;
S252:若否,则选取至少一个节点参数生成第一测试用例,第一测试用例一次只独立操作一个叶子节点;
S253:若是,则将关联的多个叶子节点的设置指令汇聚为一个第二测试用例,第二测试用例用于一次性下发、生成多个由不同叶子节点的不同参数值相互组合。
为便于读着理解本发明实施例技术方案,下面对本发明实施例中的技术细节进行详细说明。
ACS参数获取步骤,获取ACS存储的cpe参数树数据库中存储的任一CPE参数树,生成包含指定字段的统一表述的参数数据;所述统一表述格式包括了以参数路径、参数格式、参数值内容,传输方式可以通过网络传递的文件内容数据库的表格式、基于行文本的csv格式或者封装在数据报中的xml格式用于提取;将参数树导出为基于固定分隔符和字段要求的行文本。
例1:
InternetGatewayDevice.WANDevice.1.WANConnectionDevice.2.WANIPConnection.1.PortMapping.10.PortMappingDescription,参数结构以行为基础,包含了参数路径表述字段、参数格式字段、参数内容。
例2:
InternetGatewayDevice.WANDevice.1.WANConnectionDevice.2.WANIPConnection.1.PortMapping.10.InternalClient xsd:string 192.168.1.1
文本转换步骤,将指定的参数树文本,按照操作类型切分为不同的模板组件。一般ACS的远程操作指令包含了AddObject、DeleteObject、GetParameterValues、GetParameterNames、SetParameterValues、reboot、factory、download、upload、getmethods等,相应地会配上操作的参数树节点或者不带参数树节点,因而一个业务模板需要根据数据操作类型,获取相应的参数树节点。
模板组件组合步骤,根据业务场景选择不同的模板组件,组合成一个业务模板。
测试用例生成步骤,根据业务模板加载的每一个所述模板组件中的参数的数据类型,生成可变参数的测试用例和返回结果校验策略。本步骤中,分别加载业务模板组件清单,校验策略清单由所述业务模板组件清单生成,且最终选择的所述模板组件中的每一个参数都生成一个根据参数类型产生的校验策略。
对于可变参数的测试用例,主要是用于set、addobject、deleteobject替换模板组件中的参数字段,而校验参数策略,包含了CPE的响应码的检验、还有对于设置后的查询结果中的参数格式的校验。
不同的参数类型,比如字符串、整数、无符号整数、日期、固定实例对象、动态实例对象等,对于set业务参数的模板组件,需要生成不同的参数置换策略和参数检验策略,比如字符串长度有要求的,就设置长度策略从0~max最大值,字符串长度和类型,比如只支持ascii字符串还是支持unicode字符串,由TR-098和或TR-181规范约定;如果是整数,则设置整数策略,最大或者最小,对于日期也有生成响应的参数范围和校验策略。
作为其中一个子步骤,对下发指令的返回值,校验参数策略设置包括通过响应码和参数值进行校验;一些直接错误可以通过TR069协议约定的响应码来判断是否错误,比如当ACS向cpe发起操作后,cpe正常响应是0,不正常响应是9003、9005等响应码;测试系统需要约定在ACS的校验测试结果的策略。
测试用例生成可变参数的步骤中,还包括设置汇聚类型测试或分散类型测试,为了在开发阶段的测试,对组件中的多个参数分别生成一条指令,精细化拆分后,作为一个测试用例,一个业务一个模板组件可能有不止一个参数,在一些单步测试场景,需要拆分成多个参数逐个校验,确认出问题的具体参数在哪里,当进入稳定阶段,则进行汇聚测试,测试整体下发多个参数在一个指令中有什么反馈。因为如果按照批量下发只有一条响应报文,不利于排查,优选的是Object类型的指令分开到不同指令发送。
测试指令发送步骤,向通过ACS北向接口,导入最终的测试用例,其中包含业务下发指令和测试结果校验,发送到ACS服务器,进行指令下发和校验策略设置。
业务模板下发测试步骤,将基于行处理每个测试组件对应的测试用例,生成基于校验策略的测试报告。
优选的是,根据测试用例生成可变参数的步骤中,组件描述清单:
CheckWanIndex.txt GetParameterValues;
WANConnectionDevice.txt AddObject;
WANPPPConnection.txt AddObject;
Route_Entry1.txt SetParameterValues;
Route_Entry1_get.txt GetParameterValues;
1.txt Download;
reboot.txt Reboot。
每个txt文件中包含了各操作的数据模型的参数。
对于汇聚类型测试中,需要根据业务配置的模板的内容,在一条数据包分组中下发多条控制cpe进行setParameterValues或者getParameterValues的参数,对于object类型的参数,作为父节点可以支持getParameterNames,txt文件中包含了各操作的数据模型的参数或者直接获取该父节点Object下的叶子节点的内容。
更详细的步骤流程如下:
根据预处理数据得到测试组件模板,模板中的参数为object类型或者叶子节点类型,而叶子节点类型的参数可以生成setParameterValues或者getParameterValues的参数,并且修改其参数值生成可变参数标记,比如{%叶子节点名%},并且保存当前参数路径中的实例索引数值,用于检测生成的测试组件模板中实例索引的数值是否正确,如果没有实例索引,则无需检测父节点的实例索引值。
比如当获取到一行:
InternetGatewayDevice.WANDevice.1.WANConnectionDevice.1.X_WANGponLinkConfig.VLANIDMark xsd:unsignedInt 0。
那么可以将数字“0”替换成{%vlanid%},应用插值策略为无符号整数0~4096的任一值,优选测试0、1、实验室支持的某些vlanid、4095,校验策略也是这个0~4096,当设置指令的响应码表示错误时则测试失败,测试set完之后,在get相应的值不在这个范围或者跟设置的值不同,也是测试错误,记录在测试状态中,用于生成测试报告。
在选择父节点的索引的数值时,可以根据实例绑定父节点的关系,可生成对应数量父节点的AddObject类操作,提示用户插入足够数量,如果cpe默认具有足够的实例,则删除多余的AddObject操作指令中的父节点参数;并且优选的是,在下发AddObject指令前,插入检测cpe下该父节点的实例数量是否与预期的总数一致,避免错误下发不必要的指令,并且记录下发状态。
例如添加多个wandev对象时,默认插入一条getParameterValues组件,比如:CheckWanIndex.txt GetParameterValues,获取节点为:InternetGatewayDevice.WANDevice.1.WANConnectionDevice。
实例总数:InternetGatewayDevice.WANDevice.1.WANConnectionDevice.numofWANConnectionDevice entries。
那么遇到object类型的节点进行压力测试时,可以生成多个AddOject或者多个DeleteObject操作,DeleteObject操作的测试指令中将TR181和TR98中定义最大实例数的该节点的数字索引替换成{%i%},应用插值策略为无符号整数0~max的任一值,优选测试1、数据模型规范定义的id,校验策略也是这个1~max,当设置指令的响应码表示错误时则测试失败,测试完AddObject之后,在D相应的值不在这个范围或者跟设置的值不同,也是测试错误,记录在测试状态中,用于生成测试报告。
在测试报告当中,一个指令对应一个测试结果;出具的测试报告,可以清楚地统计出失败的原因,同时,当测试用例完整地覆盖多个叶子节点及其对应地参数值范围时,本申请可以在开发阶段获取到符合代码健壮性要求的完整测试用例集合,后续可以不用生成,直接调取相关的成型的测试模板。
本方案使用扩展的全业务的CPE大数据采集到的各种业务模板下的参数树或者手动添加参数的CPE的参数设置,逆向导出来参数树,再得到自动测试用的测试用例,用于分类不同类型的测试场景,并且轻量级很好部署,用于完善acs跟cpe的对接测试,从开发阶段到回归测试都提供助力,方便更多开发者和测试人员,有利于中小公司也迁移到自动化测试流程。获取参数模板的便捷化;模板可以派生出大量的参数组合的测试用例,同时发送对应的汇聚后的指令或者分散后的指令;便捷地校验CPE返回的结果,自动标记测试指令是否成功或者失败。
可以理解的是,本实施例提供的技术方案,支持从单个设备的参数内容,提取不同模块的测试参数模板,动态地跟进测试需求进行修改参数组合、修改模板组件的组合、拆分单个模块的多个叶子参数逐条测试,基于ACS的参数树可以分割出不同业务类型的主要数据节点和内容作为组件,然后把一个或多个组件组合后构成更为复杂的测试业务的模板,同时,通过识别每一个参数的格式内容,按照测试不同的参数组合的因素水平设计要求,对一个业务模板生成更为,尤其是修改cpe的运行的业务参数的测试过程中,参数组合的覆盖更为全面、科学,用关键因素的边界值变化覆盖更全面的测试场景,该方法从半自动化测试过程中积累测试用例,转换为业务模板,然后通过参数演化算法,生成大量适合TR069的业务测试的参数,可以快速地应用到新的数据模型的参数树节点要求,为培训测试人员对迁移到自动化测试的时候提供帮助,理解整个全自动测试的迁移流程和必要性,完整的测试场景和参数组合,依赖于全自动化,方便开发人员和测试人员便利地测试新扩展的业务,以完善系统的稳定性和健壮性。
实施例3
如图3所示,本发明公开实施例所提供的另一种用于用户端设备广域网管理协议的测试装置的功能结构示意图,该装置包括:
参数获取模块31,用于从自动配置服务器的参数库中获取用户端设备参数树,依据每个所述用户端设备参数树的叶子节点生成具有指定格式的参数数据,所述指定格式包括参数路径、参数格式和参数值,所述参数库用于存储所述用户端设备参数树,所述参数数据由所述用户端设备参数树的叶子节点生成;
业务组件获取模块32,用于将生成的每个所述参数数据按照操作类型和读写属性切分成不同的业务组件,所述操作类型包括添加对象、删除对象、写入参数值和读出参数值;
测试用例组件模版生成模块33,用于根据所述业务组件生成测试用例组件模版,所述测试用例组件模版包含模版组件参数和参数值校验策略;
可选参数值生成模块34,用于按照指定策略,给一个或多个所述测试用例组件模版中的每个可变参数的节点生成一个可选参数值;
测试用例生成模块35,用于根据所述可选参数值和节点情况生成测试用例。
在一些可选实施例中,如图3中部分所示,该装置还包括:
测试用例下发模块36,用于将所述测试用例向用户终端设备下发,以便用户终端设备依据所述测试用例运行待测试软件。
运行结果接收模块37,用于接收用户终端设备反馈的运行结果数据。
结果验证模块38,用于根据参数值校验策略对运行结果数据进行验证。
在一些可选实施例中,如图3中部分所示,测试用例组件模版生成模块33包括:
操作类判断子模块331:依次判断每个业务组件的类型是否为操作类数据。
第一测试用例模版生成子模块332:对于操作类的业务组件,依次将操作类的业务组件生成第一测试用例组件模版,第一测试用例组件模版包括添加对象、删除对象和实例索引选项。
模版组件参数生成子模块333:对于非操作类的业务组件,根据相应叶子节点的参数类型生成模版组件参数。
可写类型判断子模块334:判断相应叶子节点是否为可写类型。
业务模版组件获取子模块335:若相应叶子节点不是可写类型,则生成参数值获取类型和参数值名称获取类型的业务模版组件,并绑定参数树父节点Object的路径和实例索引。
第二测试用例组件模板获取子模块336:若相应叶子节点是可写类型,则根据相应叶子节点的参数类型,生成可变参数的参数值设置模板组件参数和参数值校验策略,与至少一个叶子节点组成一个第二测试用例组件模板。
在一些可选实施例中,如图3中部分所示,测试用例生成模块35包括:
汇聚类型判断子模块351: 判断同一父节点的叶子节点的业务组件是否生成汇聚类型。
第一测试用例生成子模块352:若否,则选取至少一个节点参数生成第一测试用例,第一测试用例一次只独立操作一个叶子节点。
第二测试用例生成子模块353:若是,则将关联的多个叶子节点的设置指令汇聚为一个第二测试用例,第二测试用例用于一次性下发、生成多个由不同叶子节点的不同参数值相互组合。
可以理解的是,本实施例提供的技术方案,从自动配置服务器的参数库中获取用户端设备参数树,依据每个用户端设备参数树的叶子节点生成具有指定格式的参数数据,参数数据由用户端设备参数树的叶子节点生成;将生成的每个参数数据按照操作类型和读写属性切分成不同的业务组件,根据业务组件生成测试用例组件模版,测试用例组件模版包含模版组件参数和参数值校验策略;按照指定策略,给一个或多个测试用例组件模版中的每个可变参数的节点生成一个可选参数值;根据可选参数值和节点情况生成测试用例,该方法从半自动化测试过程中积累测试用例,转换为业务模板,然后通过参数演化算法,生成大量适合TR069的业务测试的参数,可以快速地应用到新的数据模型的参数树节点要求,为培训测试人员对迁移到自动化测试的时候提供帮助,理解整个全自动测试的迁移流程和必要性,完整的测试场景和参数组合,依赖于全自动化,方便开发人员和测试人员便利地测试新扩展的业务,以完善系统的稳定性和健壮性。
实施例4
基于同一技术构思,本申请实施例还提供了一种计算机设备,包括存储器1和处理器2,如图4所示,所述存储器1存储有计算机程序,所述处理器2执行所述计算机程序时实现上述任一实施例的用于用户端设备广域网管理协议的测试方法。
其中,存储器1至少包括一种类型的可读存储介质,所述可读存储介质包括闪存、硬盘、多媒体卡、卡型存储器(例如,SD或DX存储器等)、磁性存储器、磁盘、光盘等。存储器1在一些实施例中可以是用于用户端设备广域网管理协议的测试系统的内部存储单元,例如硬盘。存储器1在另一些实施例中也可以是用于用户端设备广域网管理协议的测试系统的外部存储设备,例如插接式硬盘,智能存储卡(Smart Media Card, SMC),安全数字(SecureDigital, SD)卡,闪存卡(Flash Card)等。进一步地,存储器1还可以既包括用于用户端设备广域网管理协议的测试系统的内部存储单元也包括外部存储设备。存储器1不仅可以用于存储安装于用于用户端设备广域网管理协议的测试系统的应用软件及各类数据,例如用于用户端设备广域网管理协议的测试程序的代码等,还可以用于暂时地存储已经输出或者将要输出的数据。
处理器2在一些实施例中可以是一中央处理器(Central Processing Unit,CPU)、控制器、微控制器、微处理器或其他数据处理芯片,用于运行存储器1中存储的程序代码或处理数据,例如执行用于用户端设备广域网管理协议的测试程序等。
可以理解的是,本实施例提供的技术方案,从自动配置服务器的参数库中获取用户端设备参数树,依据每个用户端设备参数树的叶子节点生成具有指定格式的参数数据,参数数据由用户端设备参数树的叶子节点生成;将生成的每个参数数据按照操作类型和读写属性切分成不同的业务组件,根据业务组件生成测试用例组件模版,测试用例组件模版包含模版组件参数和参数值校验策略;按照指定策略,给一个或多个测试用例组件模版中的每个可变参数的节点生成一个可选参数值;根据可选参数值和节点情况生成测试用例,该方法从半自动化测试过程中积累测试用例,转换为业务模板,然后通过参数演化算法,生成大量适合TR069的业务测试的参数,可以快速地应用到新的数据模型的参数树节点要求,为培训测试人员对迁移到自动化测试的时候提供帮助,理解整个全自动测试的迁移流程和必要性,完整的测试场景和参数组合,依赖于全自动化,方便开发人员和测试人员便利地测试新扩展的业务,以完善系统的稳定性和健壮性。
本发明公开实施例还提供一种计算机可读存储介质,该计算机可读存储介质上存储有计算机程序,该计算机程序被处理器运行时执行上述方法实施例中所述的用于用户端设备广域网管理协议的测试方法的步骤。其中,该存储介质可以是易失性或非易失的计算机可读取存储介质。
本发明公开实施例所提供的用于用户端设备广域网管理协议的测试方法的计算机程序产品,包括存储了程序代码的计算机可读存储介质,所述程序代码包括的指令可用于执行上述方法实施例中所述的用于用户端设备广域网管理协议的测试方法的步骤,具体可参见上述方法实施例,在此不再赘述。
本发明公开实施例还提供一种计算机程序,该计算机程序被处理器执行时实现前述实施例的任意一种方法。该计算机程序产品可以具体通过硬件、软件或其结合的方式实现。在一个可选实施例中,所述计算机程序产品具体体现为计算机存储介质,在另一个可选实施例中,计算机程序产品具体体现为软件产品,例如软件开发包(Software DevelopmentKit,SDK)等等。
可以理解的是,上述各实施例中相同或相似部分可以相互参考,在一些实施例中未详细说明的内容可以参见其他实施例中相同或相似的内容。
需要说明的是,在本发明的描述中,术语“第一”、“第二”等仅用于描述目的,而不能理解为指示或暗示相对重要性。此外,在本发明的描述中,除非另有说明,“多个”的含义是指至少两个。
流程图中或在此以其他方式描述的任何过程或方法描述可以被理解为,表示包括一个或更多个用于实现特定逻辑功能或过程的步骤的可执行指令的代码的模块、片段或部分,并且本发明的优选实施方式的范围包括另外的实现,其中可以不按所示出或讨论的顺序,包括根据所涉及的功能按基本同时的方式或按相反的顺序,来执行功能,这应被本发明的实施例所属技术领域的技术人员所理解。
应当理解,本发明的各部分可以用硬件、软件、固件或它们的组合来实现。在上述实施方式中,多个步骤或方法可以用存储在存储器中且由合适的指令执行系统执行的软件或固件来实现。例如,如果用硬件来实现,和在另一实施方式中一样,可用本领域公知的下列技术中的任一项或他们的组合来实现:具有用于对数据信号实现逻辑功能的逻辑门电路的离散逻辑电路,具有合适的组合逻辑门电路的专用集成电路,可编程门阵列(PGA),现场可编程门阵列(FPGA)等。
本技术领域的普通技术人员可以理解实现上述实施例方法携带的全部或部分步骤是可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,该程序在执行时,包括方法实施例的步骤之一或其组合。
此外,在本发明各个实施例中的各功能单元可以集成在一个处理模块中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。所述集成的模块如果以软件功能模块的形式实现并作为独立的产品销售或使用时,也可以存储在一个计算机可读取存储介质中。
上述提到的存储介质可以是只读存储器,磁盘或光盘等。
在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本发明的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不一定指的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任何的一个或多个实施例或示例中以合适的方式结合。
尽管上面已经示出和描述了本发明的实施例,可以理解的是,上述实施例是示例性的,不能理解为对本发明的限制,本领域的普通技术人员在本发明的范围内可以对上述实施例进行变化、修改、替换和变型。
Claims (8)
1.一种用于用户端设备广域网管理协议的测试方法,其特征在于,包括:
从自动配置服务器的参数库中获取用户端设备参数树,依据每个所述用户端设备参数树的叶子节点生成具有指定格式的参数数据,所述指定格式包括参数路径、参数格式和参数值,所述参数库用于存储所述用户端设备参数树,所述参数数据由所述用户端设备参数树的叶子节点生成;
将生成的每个所述参数数据按照操作类型和读写属性切分成不同的业务组件,所述操作类型包括添加对象、删除对象、写入参数值和读出参数值;
根据所述业务组件生成测试用例组件模版,所述测试用例组件模版包含模版组件参数和参数值校验策略;
按照指定策略,给一个或多个所述测试用例组件模版中的每个可变参数的节点生成一个可选参数值;
根据所述可选参数值和节点情况生成测试用例;
所述根据所述业务组件生成测试用例组件模版为:根据所述业务组件是否为操作类数据和叶子节点是否为可写类型生成测试用例组件模版;
所述根据所述业务组件是否为操作类数据和叶子节点是否为可写类型生成测试用例组件模版包括:依次判断每个所述业务组件的类型是否为操作类数据;对于操作类的业务组件,依次将操作类的业务组件生成第一测试用例组件模版,所述第一测试用例组件模版包括添加对象、删除对象和实例索引选项;对于非操作类的业务组件,根据相应叶子节点的参数类型生成模版组件参数;判断相应叶子节点是否为可写类型;若所述相应叶子节点不是可写类型,则生成参数值值获取类型和参数值名称获取类型的业务模版组件,并绑定所述参数树父节点Object的路径和实例索引;若所述相应叶子节点是可写类型,则根据所述相应叶子节点的参数类型,生成可变参数的参数值设置模板组件参数和参数值校验策略,与至少一个叶子节点组成一个第二测试用例组件模板。
2.根据权利要求1所述的用于用户端设备广域网管理协议的测试方法,其特征在于,还包括:
将所述测试用例向用户终端设备下发,以便用户终端设备依据所述测试用例运行待测试软件;
接收用户终端设备反馈的运行结果数据;
根据参数值校验策略对运行结果数据进行验证。
3.根据权利要求2所述的用于用户端设备广域网管理协议的测试方法,其特征在于,所述根据所述可选参数值和节点情况生成测试用例为:根据所述可选参数值和节点情况采用汇聚的方式或者分散的方式生成测试用例。
4.根据权利要求3所述的用于用户端设备广域网管理协议的测试方法,其特征在于,所述根据所述可选参数值和节点情况采用汇聚的方式或者分散的方式生成测试用例包括:
判断同一父节点的叶子节点的业务组件是否生成汇聚类型;
若否,则选取至少一个节点参数生成第一测试用例,所述第一测试用例一次只独立操作一个叶子节点;
若是,则将关联的多个叶子节点的设置指令汇聚为一个第二测试用例,所述第二测试用例用于一次性下发、生成多个由不同叶子节点的不同参数值相互组合。
5.根据权利要求4所述的用于用户端设备广域网管理协议的测试方法,其特征在于,所述参数值校验策略包括通过响应码和参数值进行校验。
6.一种用于用户端设备广域网管理协议的测试装置,其特征在于,
参数获取模块,用于从自动配置服务器的参数库中获取用户端设备参数树,依据每个所述用户端设备参数树的叶子节点生成具有指定格式的参数数据,所述指定格式包括参数路径、参数格式和参数值,所述参数库用于存储所述用户端设备参数树,所述参数数据由所述用户端设备参数树的叶子节点生成;
业务组件获取模块,用于将生成的每个所述参数数据按照操作类型和读写属性切分成不同的业务组件,所述操作类型包括添加对象、删除对象、写入参数值和读出参数值;
测试用例组件模版生成模块,用于根据所述业务组件生成测试用例组件模版,所述测试用例组件模版包含模版组件参数和参数值校验策略;
可选参数值生成模块,用于按照指定策略,给一个或多个所述测试用例组件模版中的每个可变参数的节点生成一个可选参数值;
测试用例生成模块,用于根据所述可选参数值和节点情况生成测试用例;
其中,测试用例组件模版生成模块包括:
操作类判断子模块:依次判断每个业务组件的类型是否为操作类数据;
第一测试用例模版生成子模块:对于操作类的业务组件,依次将操作类的业务组件生成第一测试用例组件模版,第一测试用例组件模版包括添加对象、删除对象和实例索引选项;
模版组件参数生成子模块:对于非操作类的业务组件,根据相应叶子节点的参数类型生成模版组件参数;
可写类型判断子模块:判断相应叶子节点是否为可写类型;
业务模版组件获取子模块:若相应叶子节点不是可写类型,则生成参数值值获取类型和参数值名称获取类型的业务模版组件,并绑定参数树父节点Object的路径和实例索引;
第二测试用例组件模板获取子模块:若相应叶子节点是可写类型,则根据相应叶子节点的参数类型,生成可变参数的参数值设置模板组件参数和参数值校验策略,与至少一个叶子节点组成一个第二测试用例组件模板。
7.一种计算机设备,其特征在于,包括:处理器、存储器和总线,所述存储器存储有所述处理器可执行的机器可读指令,当计算机设备运行时,所述处理器与所述存储器之间通过总线通信,所述机器可读指令被所述处理器执行时执行如权利要求1至5中任一项所述用于用户端设备广域网管理协议的测试方法。
8.一种计算机可读存储介质,其特征在于,该计算机可读存储介质上存储有计算机程序,该计算机程序被处理器运行时执行如权利要求1至5中任一项所述用于用户端设备广域网管理协议的测试方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310205725.3A CN116094973B (zh) | 2023-03-06 | 2023-03-06 | 用于用户端设备广域网管理协议的测试方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310205725.3A CN116094973B (zh) | 2023-03-06 | 2023-03-06 | 用于用户端设备广域网管理协议的测试方法和装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN116094973A CN116094973A (zh) | 2023-05-09 |
CN116094973B true CN116094973B (zh) | 2023-06-16 |
Family
ID=86202707
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310205725.3A Active CN116094973B (zh) | 2023-03-06 | 2023-03-06 | 用于用户端设备广域网管理协议的测试方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116094973B (zh) |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2021184725A1 (zh) * | 2020-03-16 | 2021-09-23 | 平安科技(深圳)有限公司 | 用户界面测试方法、装置、存储介质及计算机设备 |
Family Cites Families (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7805635B2 (en) * | 2007-04-09 | 2010-09-28 | International Business Machines Corporation | Constraint programming for reduction of system test-configuration-matrix complexity |
US20100180260A1 (en) * | 2009-01-10 | 2010-07-15 | TestingCzars Software Solutions Private Limited | Method and system for performing an automated quality assurance testing |
CN107908559B (zh) * | 2017-11-15 | 2021-05-07 | 中国农业银行股份有限公司 | 一种测试案例设计方法及装置 |
CN109299003A (zh) * | 2018-08-31 | 2019-02-01 | 苏州洞察云信息技术有限公司 | 一种面向复杂软件的全自动测试用例驱动生成系统 |
CN112799959A (zh) * | 2021-02-24 | 2021-05-14 | 网易(杭州)网络有限公司 | 接口测试方法、装置、存储介质和电子装置 |
CN115934147A (zh) * | 2021-08-06 | 2023-04-07 | 中兴通讯股份有限公司 | 软件自动修复方法、系统、电子设备及存储介质 |
CN113778897B (zh) * | 2021-09-26 | 2024-03-29 | 网易有道信息技术(江苏)有限公司 | 接口的自动测试方法、装置、设备及存储介质 |
CN114398194A (zh) * | 2022-01-21 | 2022-04-26 | 平安科技(深圳)有限公司 | 数据收集方法、装置、电子设备及可读存储介质 |
CN114610608A (zh) * | 2022-03-03 | 2022-06-10 | 北京百度网讯科技有限公司 | 测试用例处理方法、装置、电子设备以及存储介质 |
-
2023
- 2023-03-06 CN CN202310205725.3A patent/CN116094973B/zh active Active
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2021184725A1 (zh) * | 2020-03-16 | 2021-09-23 | 平安科技(深圳)有限公司 | 用户界面测试方法、装置、存储介质及计算机设备 |
Also Published As
Publication number | Publication date |
---|---|
CN116094973A (zh) | 2023-05-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108647883B (zh) | 一种业务审批方法、装置、设备及介质 | |
CA2670231C (en) | Automated testing and control of networked devices | |
CN104053051B (zh) | 一种实现手机音频、视频兼容性的自动化测试方法及装置 | |
CN104601403A (zh) | 一种自动化测试系统 | |
ITTO980722A1 (it) | Procedimento per l'installazione e/o la verifica del software per un sistema di computer prodotto su ordinazione, e sistema di computer per | |
CN108459951B (zh) | 测试方法和装置 | |
CN103905258A (zh) | 一种客户端数据上传功能的测试方法及装置 | |
CN111552632B (zh) | 一种接口测试方法及装置 | |
US10148486B2 (en) | Object version management | |
CN116204438A (zh) | 测试用例生成方法、自动化测试方法和相关装置 | |
CN112130761A (zh) | 一种存储系统的扩容方法、系统及相关装置 | |
CN115422048A (zh) | 链路稳定性测试方法、装置、计算机设备和存储介质 | |
CN104836686A (zh) | 一种生成服务器的配置文件的方法及装置 | |
CN116094973B (zh) | 用于用户端设备广域网管理协议的测试方法和装置 | |
WO2011131101A1 (zh) | 数据割接方法及装置 | |
CN113792008A (zh) | 网络拓扑结构的获取方法、装置、电子设备及存储介质 | |
CN116893822A (zh) | 工作流引擎多环境部署方法和系统、电子设备、存储介质 | |
WO2023051073A1 (zh) | 数据库测试方法、分布式数据库、存储介质 | |
CN105302731A (zh) | 网站架构升级测试系统和方法 | |
CN104753659A (zh) | 一种多网元数据同步加载的方法、装置及系统 | |
CN113965489B (zh) | 链路超时检测方法、装置、计算机设备和存储介质 | |
WO2023050815A1 (zh) | 切片业务配置方法、网络设备、网络系统及存储介质 | |
CN110535725B (zh) | 一种企业网络测试方法及装置 | |
CN115934684B (zh) | 一种多源数据库数据移植方法及装置、设备及存储介质 | |
CN117459381A (zh) | 一种生成配置文件的方法、装置、电子设备及存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |