【技术实现步骤摘要】
基于命令行的自动化测试方法及系统
本专利技术涉及卫星通信与计算机技术,尤其与一种基于命令行的自动化测试方法及系统相关。
技术介绍
在现代科技产品中,有很多产品设备支持命令行直接进行配置和使用,这类产品的测试基本都是通过命令行命令来进行的。通常一个设备支持的命令可能有成百上千条,甚至更多,而且不同的设备之间命令行业可能存在差异;另外,这些设备在实际的应用场景中也是千变万化,随着组网场景的变化,如卫星网络组网不同,测试对象也需要不停的根据需求不断的变换,测试工作将面临相当大的工作量,特别在版本快速迭代中,普通的测试手段更是难以为继。在当前业界的研发测试过程中,通常用到了一下两种测试手段:1、传统手工测试:通过人为进行命令行下发配置,命令行命令数量多,配置繁琐,效率低,易出错;2、自动化执行:第一,测试对象与测试用例脚本绑定,在测试用例脚本中指定测试对象,当测试对象变更时,只有修改脚本,否则脚本可能无法正常运行,第二,测试数据,如有效值、无效值、边界值等直接写在用例之中随着脚本下发,当设备规格有变更时,脚本 ...
【技术保护点】
1.一种基于命令行的自动化测试方法,其特征在于,包括步骤:/n对输入的组网场景进行初始化:从所述组网场景中抽离出所有独立存在的个体,并实例化出测试对象,生成测试对象全集;/n对输入的测试数据进行初始化:按照所述测试数据在设备类型和版本上的表现差异将所述测试数据分为多类,并生成特性测试数据字典集合;/n从所述测试对象全集中提取当前测试特性所需要的对应测试对象,进行分类实例化处理,使得每一个所述对应测试对象具有多个不同的功能实例;/n根据所述对应测试对象从所述特性测试数据字典集合中提取出与所述对应测试对象具有映射关系的测试数据字典;/n根据所述对应测试对象,以及所述测试数据字典 ...
【技术特征摘要】
1.一种基于命令行的自动化测试方法,其特征在于,包括步骤:
对输入的组网场景进行初始化:从所述组网场景中抽离出所有独立存在的个体,并实例化出测试对象,生成测试对象全集;
对输入的测试数据进行初始化:按照所述测试数据在设备类型和版本上的表现差异将所述测试数据分为多类,并生成特性测试数据字典集合;
从所述测试对象全集中提取当前测试特性所需要的对应测试对象,进行分类实例化处理,使得每一个所述对应测试对象具有多个不同的功能实例;
根据所述对应测试对象从所述特性测试数据字典集合中提取出与所述对应测试对象具有映射关系的测试数据字典;
根据所述对应测试对象,以及所述测试数据字典,动态适配命令行命令;
下发所述命令行命令,对所述对应测试对象对应的组网场景中的个体进行测试,并反馈下发结果。
2.根据权利要求1所述的基于命令行的自动化测试方法,其特征在于,从所述组网场景中抽离出所有独立存在的个体,并实例化出测试对象,包括:
将组网场景中的设备及各设备的下属器件抽离,实例化为设备对象Dev1、Dev2、……、Devn及设备下子对象Dev1child1、Dev1child2、……、Devnchildn;
将组网场景中的设备之间连接器件抽离,实例化为连接对象Link1、Link2、……、Linkn;
将组网场景中的其他独立存在个体抽离,实例化为其他对象OtherObj1、OtherObj2、……、OtherObjn。
3.根据权利要求1所述的基于命令行的自动化测试方法,其特征在于:
按照所述测试数据在设备类型和版本上的表现差异将所述测试数据分为三类:
公共测试数据集:在所有设备和所有版本上的测试数据和结果表现都一致,无差异的测试数据;
设备差异性测试数据集:在不同的设备类型上测试数据规格和结果表现存在差异的测试数据;以及设备内部版本差异性测试数据集:在相同设备类型下因版本不同而产生的不同测试数据。
4.根据权利要求3所述的基于命令行的自动化测试方法,其特征在于,
为各测试数据集设定同一tag标记,生成特性数据字典Dictionary1,以tag标记作为Dictionary1的key值且key值唯一,以各测试数据集作为对应key值的value值;
在所述各测试数据集作为对应key值的value值中嵌套一层Dictionary2,Dictionary2中key值分别为common/device;
在device中嵌套一层Dictionary3,Dictionary3中key值分别为各设备类型;Dictionary3中,无版本差异的的各测试数据直接写入Dictionary3中key值对应的value值,有版本差异的测试数据再嵌套一层Dictionary4,Dictionary4中key值为设备存在差异的版本号,Dictionary4中key值对应value值为版本差异性测试数据;
最终生成一个多层嵌套,key值唯一的特性测试数据字典集合。
5.根据权利要求1所述的基于命令行的自动化测试方法,其特征在于:动态适配命令行命令,具体是:
首先,对多个版本间的命令行进行由旧到新的增量处理:当版本里有新增命令行,则放在新的版本命令行文件里面;旧的命令行直接在老版本适配;
然后,将设配到的命令行set到入口处定义的命令行对象属性中,作为所述对应测试...
【专利技术属性】
技术研发人员:肖大鹏,
申请(专利权)人:四川安迪科技实业有限公司,
类型:发明
国别省市:四川;51
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。