一种环境自动重置的云平台自动化测试方法及系统技术方案

技术编号:24707675 阅读:27 留言:0更新日期:2020-06-30 23:55
本发明专利技术提供一种环境自动重置的云平台自动化测试方法及系统,所述方法包括如下步骤:收集并分析云平台测试结果,获取执行失败的测试用例,并记录执行失败测试用例对应的功能模块名称及路径,生成第一列表;根据第一列表中的功能模块名称及路径获取功能模块的测试日志,遍历功能模块的测试日志获取创建的所有资源,并记录资源名称及ID,生成第二列表;获取云平台系统日志,并根据第二列表的资源名称及ID从云平台系统日志中查找每个资源的创建记录,根据资源创建记录获取每个资源对应的各级子资源,分别建立资源关系树;获取每个资源及其资源关系树,按照后序遍历顺序依次删除各资源的各级父节点资源依赖的子节点资源,直至删除根节点对应资源。

【技术实现步骤摘要】
一种环境自动重置的云平台自动化测试方法及系统
本专利技术属于软件测试
,具体涉及一种环境自动重置的云平台自动化测试方法及系统。
技术介绍
现有的以OpenStack为核心的智慧云平台产品,支持云主机、裸机、容器等虚拟资源的统一管理,实现自助式虚拟资源服务,为用户提供云计算的一体化交付、一站式解决方案。但在使用复杂业务功能时,需要申请计算、存储、网络、镜像、负载均衡器等多种资源,各资源的创建和删除存在相互依赖关系,且其层级依赖关系无法从页面分析。在执行自动化测试时,若用例执行失败,则可能生成大量的冗余资源,由于冗余资源间存在层级依赖关系,且依赖关系无法从页面获取,使测试人员手动清理十分困难。此为现有技术的不足,因此,针对现有技术中的上述缺陷,提供一种环境自动重置的云平台自动化测试方法及系统,是非常有必要的。
技术实现思路
针对现有技术的上述云产品的资源在创建和删除存在相互依赖关系,且其层级依赖关系无法从页面分析;且自动化测试时,生成大量冗余资源,冗余资源存在依赖关系无法从页面获取,手动清理困难的缺陷,本专利技术提供一种环境自动重置的云平台自动化测试方法及系统,以解决上述技术问题。第一方面,本专利技术提供一种环境自动重置的云平台自动化测试方法,包括如下步骤:S1.收集并分析云平台测试结果,获取执行失败的测试用例,并记录执行失败测试用例对应的云平台功能模块名称及路径,生成第一列表;S2.根据第一列表中的云平台功能模块名称及路径获取云平台功能模块的测试日志,遍历云平台功能模块的测试日志获取云平台功能模块创建的所有资源,并记录资源名称及ID,生成第二列表;S3.获取云平台系统日志,并根据第二列表的资源名称及ID从云平台系统日志中查找每个资源的创建记录,根据资源创建记录获取每个资源对应的各级子资源,分别建立每个资源的资源关系树;S4.获取每个资源及其资源关系树,按照后序遍历顺序依次删除每个资源的各级父节点资源依赖的子节点资源,直至删除根节点对应的资源。进一步地,步骤S3之前还包括如下步骤:S3A.获取第二列表的资源名称及ID,并调用云平台接口依次判断第二列表中资源是否删除;若是,更新第二列表,将已删除资源从第二列表剔除;若否,保留第二列表中资源。校验第二列表中的资源确保第二列表实时显示资源的正确性,确保第二列表中没有已删除资源。进一步地,步骤S4中,通过调用云平台接口删除各级父节点资源依赖的子节点资源。云平台接口是资源校验的接口,也是资源删除的接口。进一步地,步骤S3具体步骤如下:S31.获取云平台系统日志;S32.根据第二列表的资源名称及ID从云平台系统日志中查找每个资源的创建记录;S33.依次定位第二列表中资源,根据每个资源的创建记录获取对应的各级子资源,建立以每个资源为根节点的资源关系树。根据云平台系统日志中的资源创建记录,进行深度优先搜索,依次搜索到子资源的底层,即搜索到子资源下未创建子资源的资源时,停止,创建资源关系树。进一步地,步骤S33具体步骤如下:S331.定位第二列表中资源;S332.根据资源创建记录判断定位资源是否有未处理子资源;若是,将未处理子资源插入资源关系树,作为定位资源节点的子节点资源,以子节点资源为定位资源;返回步骤S332;若否,进入步骤S333;S333.判断定位资源是否为根节点资源;若否,返回定位资源的父节点资源,以父节点资源为定位资源;返回步骤S332;若是,进入步骤S4。依据深度优先搜索的方法,从根节点资源开始依次搜索子资源插入资源关系树,直至子资源的底层,再逐层返回父节点资源,搜索父节点的其他子节点资源,直至返回根节点资源。进一步地,步骤S4具体步骤如下:S41.根据资源关系树判断定位资源是否有未处理子节点资源;若是,将子节点资源作为定位资源,返回步骤S41;若否,进入步骤S42;S42.删除定位资源,并判断定位资源是否为根节点资源;若否,返回定位资源的父节点资源,以父节点资源为定位资源;返回步骤S41;若是,结束。从根节点资源开始定位到并删除最底层的依赖资源,逐层返回,直至删除根节点资源。进一步地,步骤S42中,当定位资源为根节点资源时,进入步骤S43;S43.验证第二列表中是否有剩余资源;若是,返回步骤S331;若否,结束。确保执行失败的测试用例对应功能模块依赖的所有资源均被删除。第二方面,本专利技术提供一种环境自动重置的云平台自动化测试系统,包括:用例分拣模块,用于收集并分析云平台测试结果,获取执行失败的测试用例,并记录执行失败测试用例对应的云平台功能模块名称及路径,生成第一列表;测试日志分析模块,用于根据第一列表中的云平台功能模块名称及路径获取云平台功能模块的测试日志,遍历云平台功能模块的测试日志获取云平台功能模块创建的所有资源,并记录资源名称及ID,生成第二列表;云平台日志分析模块,用于获取云平台系统日志,并根据第二列表的资源名称及ID从云平台系统日志中查找每个资源的创建记录,根据资源创建记录获取每个资源对应的各级子资源,分别建立每个资源的资源关系树;资源删除模块,用于获取每个资源及其资源关系树,按照后序遍历顺序依次删除每个资源的各级父节点资源依赖的子节点资源,直至删除根节点对应的资源。进一步地,还包括:资源校验模块,用于获取第二列表的资源名称及ID,并调用云平台接口依次判断第二列表中资源是否删除;并在第二列表中存在已删除资源时,更新第二列表,将已删除资源从第二列表剔除,以及在第二列表中不存在已删除资源时,保留第二列表中资源。进一步地,云平台日志分析模块包括:系统日志获取单元,用于获取云平台系统日志;资源创建记录查找单元,用于根据第二列表的资源名称及ID从云平台系统日志中查找每个资源的创建记录;资源关系树创建单元,用于依次定位第二列表中资源,根据每个资源的创建记录获取对应的各级子资源,建立以每个资源为根节点的资源关系树;资源关系树创建单元包括:资源定位子单元,用于定位第二列表中资源;子资源判断子单元,用于根据资源创建记录判断定位资源是否有未处理子资源;子资源插入子单元,用于当定位资源有未处理子资源时,将未处理子资源插入资源关系树,作为定位资源节点的子节点资源,以子节点资源为定位资源;根节点判断子单元,用于当定位资源没有未处理子资源时,判断定位资源是否为根节点资源;父节点返回子单元,用于当定位资源不是根节点资源时,返回定位资源的父节点资源,以父节点资源为定位资源;资源删除模块包括:子节点资源判断单元,用于根据资源关系树判断定位资源是否有未处理子节点资源;子节点资源定位单元,用于当定位资源有未处理子节点资源时,将子节点资源作为定位资源;定位资源删除及根节点判断单元,用于当本文档来自技高网...

【技术保护点】
1.一种环境自动重置的云平台自动化测试方法,其特征在于,包括如下步骤:/nS1.收集并分析云平台测试结果,获取执行失败的测试用例,并记录执行失败测试用例对应的云平台功能模块名称及路径,生成第一列表;/nS2.根据第一列表中的云平台功能模块名称及路径获取云平台功能模块的测试日志,遍历云平台功能模块的测试日志获取云平台功能模块创建的所有资源,并记录资源名称及ID,生成第二列表;/nS3.获取云平台系统日志,并根据第二列表的资源名称及ID从云平台系统日志中查找每个资源的创建记录,根据资源创建记录获取每个资源对应的各级子资源,分别建立每个资源的资源关系树;/nS4.获取每个资源及其资源关系树,按照后序遍历顺序依次删除每个资源的各级父节点资源依赖的子节点资源,直至删除根节点对应的资源。/n

【技术特征摘要】
1.一种环境自动重置的云平台自动化测试方法,其特征在于,包括如下步骤:
S1.收集并分析云平台测试结果,获取执行失败的测试用例,并记录执行失败测试用例对应的云平台功能模块名称及路径,生成第一列表;
S2.根据第一列表中的云平台功能模块名称及路径获取云平台功能模块的测试日志,遍历云平台功能模块的测试日志获取云平台功能模块创建的所有资源,并记录资源名称及ID,生成第二列表;
S3.获取云平台系统日志,并根据第二列表的资源名称及ID从云平台系统日志中查找每个资源的创建记录,根据资源创建记录获取每个资源对应的各级子资源,分别建立每个资源的资源关系树;
S4.获取每个资源及其资源关系树,按照后序遍历顺序依次删除每个资源的各级父节点资源依赖的子节点资源,直至删除根节点对应的资源。


2.如权利要求1所述的环境自动重置的云平台自动化测试方法,其特征在于,步骤S3之前还包括如下步骤:
S3A.获取第二列表的资源名称及ID,并调用云平台接口依次判断第二列表中资源是否删除;
若是,更新第二列表,将已删除资源从第二列表剔除;进入步骤S3;
若否,保留第二列表中资源;进入步骤S3。


3.如权利要求2所述的环境自动重置的云平台自动化测试方法,其特征在于,步骤S4中,通过调用云平台接口删除各级父节点资源依赖的子节点资源。


4.如权利要求1所述的环境自动重置的云平台自动化测试方法,其特征在于,步骤S3具体步骤如下:
S31.获取云平台系统日志;
S32.根据第二列表的资源名称及ID从云平台系统日志中查找每个资源的创建记录;
S33.依次定位第二列表中资源,根据每个资源的创建记录获取对应的各级子资源,建立以每个资源为根节点的资源关系树。


5.如权利要求4所述的环境自动重置的云平台自动化测试方法,其特征在于,步骤S33具体步骤如下:
S331.定位第二列表中资源;
S332.根据资源创建记录判断定位资源是否有未处理子资源;
若是,将未处理子资源插入资源关系树,作为定位资源节点的子节点资源,以子节点资源为定位资源;返回步骤S332;
若否,进入步骤S333;
S333.判断定位资源是否为根节点资源;
若否,返回定位资源的父节点资源,以父节点资源为定位资源;返回步骤S332;
若是,进入步骤S4。


6.如权利要求5所述的环境自动重置的云平台自动化测试方法,其特征在于,步骤S4具体步骤如下:
S41.根据资源关系树判断定位资源是否有未处理子节点资源;
若是,将子节点资源作为定位资源,返回步骤S41;
若否,进入步骤S42;
S42.删除定位资源,并判断定位资源是否为根节点资源;
若否,返回定位资源的父节点资源,以父节点资源为定位资源;返回步骤S41;
若是,结束。


7.如权利要求6所述的环境自动重置的云平台自动化测试方法,其特征在于,步骤S42中,当定位资源为根节点资源时,...

【专利技术属性】
技术研发人员:李康康
申请(专利权)人:苏州浪潮智能科技有限公司
类型:发明
国别省市:江苏;32

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1