CN111427768A - 镜像测试方法、装置、计算机设备及存储介质 - Google Patents

镜像测试方法、装置、计算机设备及存储介质 Download PDF

Info

Publication number
CN111427768A
CN111427768A CN202010120604.5A CN202010120604A CN111427768A CN 111427768 A CN111427768 A CN 111427768A CN 202010120604 A CN202010120604 A CN 202010120604A CN 111427768 A CN111427768 A CN 111427768A
Authority
CN
China
Prior art keywords
partition
cloud
server
cloud host
test
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.)
Pending
Application number
CN202010120604.5A
Other languages
English (en)
Inventor
李梦
秦宁元
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Ping An Technology Shenzhen Co Ltd
Original Assignee
Ping An Technology Shenzhen Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Ping An Technology Shenzhen Co Ltd filed Critical Ping An Technology Shenzhen Co Ltd
Priority to CN202010120604.5A priority Critical patent/CN111427768A/zh
Priority to PCT/CN2020/098795 priority patent/WO2021169114A1/zh
Publication of CN111427768A publication Critical patent/CN111427768A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/3668Software testing
    • G06F11/3672Test management
    • G06F11/3688Test management for test execution, e.g. scheduling of test suites
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/3668Software testing
    • G06F11/3672Test management
    • G06F11/3692Test management for test results analysis

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Debugging And Monitoring (AREA)
  • Facsimiles In General (AREA)

Abstract

本申请揭示了镜像测试方法,包括:根据部署脚本将待镜像模板测试的shell脚本部署至云平台执行模板测试的第一分区的服务器上;将待测试镜像根据预设创建脚本创建待测试镜像对应的云主机,云主机携带云主机的ip、用户名及密码;将云主机携带的ip、用户名及密码,传递至测试待测试镜像的云平台的第一分区的服务器,实现第一分区的服务器与云主机的关联连接;判断第一分区的服务器是否被调用;若是,则控制第一分区的服务器将待测试镜像对应的镜像模板测试的shell脚本上传至云主机;获取云主机执行shell脚本返回的测试结果。通过将测试模板的shell脚本放置到预先搭建好的svr上,模板测试时只需要调用svr进行测试,提高了测试的效率和成功率。

Description

镜像测试方法、装置、计算机设备及存储介质
技术领域
本申请涉及到计算机领域,特别是涉及到镜像测试方法、装置、计算机设备及存储介质。
背景技术
镜像是一台创建云主机的基本要素,现在市面上的镜像种类繁多centos、ubuntu、debian、rhel、windows、gpu-centos、gpu-windows,更新的速度又较快,通常半年就会有新版本,在每个大版本里面还会存在小版本的更新。市场上的镜像更新迭代较快,为了满足用户需求,需要不断的去上架最新的镜像版本,所以测试人员有大量的测试任务去测试镜像;通常测试流程是先在测试环境测试,然后在上架到生产进行测试,由于云计算cloudstack的架构,每个镜像又需要上传到每个可用分区,以便用户能够灵活选择可用分区,部署自己的服务,需要在每个可用分区重复测试一遍镜像,重复机械的测试过程大大的浪费了测试人员的工作时间,且效率低下,易发生漏测。
发明内容
本申请的主要目的为提供镜像测试方法,旨在解决现有镜像测试效率低、漏测率高的技术问题。
本申请提出一种镜像测试方法,包括:
根据部署脚本将待镜像模板测试的shell脚本部署至云平台执行模板测试的第一分区的服务器上,其中,所述shell脚本为预先编写好的,包括执行模板测试时的各种参量,所述第一分区为所述云平台中所有分区中的任意一个,所述云平台中的每个分区分别对应一个服务器;
将待测试镜像根据预设创建脚本创建所述待测试镜像对应的云主机,所述云主机携带云主机的ip、用户名及密码;
将所述云主机携带的ip、用户名及密码,传递至测试所述待测试镜像的所述云平台的第一分区的服务器,实现所述第一分区的服务器与所述云主机的关联连接;
判断所述第一分区的服务器是否被调用;
若是,则控制所述第一分区的服务器将所述待测试镜像对应的镜像模板测试的shell脚本上传至所述云主机;
获取所述云主机执行所述shell脚本返回的测试结果。
优选地,所述参量包括操作系统os、cpu、内存以及主机名,所述判断所述第一分区的服务器是否被调用的步骤,包括:
获取所述云主机的操作系统os、cpu、内存以及主机名;
判断所述云主机的操作系统os、cpu、内存以及主机名,是否与所述第一分区的服务器中的shell脚本携带的操作系统os、cpu、内存以及主机名一一对应相同;
若相同,则依次调取对应的检查指令分别检查ntp是否匹配、是否配置yum源、检查dns是否匹配、检查初始化云主机需要的各类进程是否已配置,所述进程包括快照进程、下发请求进程、监控进程和安全进程;
若均已匹配,则判定所述第一分区的服务器被调用。
优选地,所述云平台的同一分区对应多个不同的云主机,控制所述第一分区的服务器将所述待测试镜像对应的镜像模板测试的shell脚本上传至所述云主机的步骤,包括:
判断第一云主机是否调用所述第一分区的服务器,其中,所述第一云主机为所述第一分区中的任一待测试镜像对应的云主机;
若是,则将第一云主机对应的参量传递至所述第一分区的服务器;
判断所述第一云主机是否调用完所述第一分区的服务器;
若是,则释放所述第一分区的服务器;
判断第二云主机是否调用所述第一分区的服务器,其中,所述第二云主机为所述第一分区中的任一待测试镜像对应的云主机;
若是,则将所述第二云主机对应的参量传递至所述第一分区的服务器;
根据所述第一云主机和所述第二云主机的测试过程依次完成所述第一分区各云主机的镜像测试。
优选地,所述云平台的同一分区对应多个不同的云主机,控制所述第一分区的服务器将所述待测试镜像对应的镜像模板测试的shell脚本上传至所述云主机的步骤,包括:
获取所述第一分区的服务器对应匹配的所有云主机的参数列表;
将所有云主机的参数列表中各云主机的参数一一与所述第一分区的服务器进行匹配;
若均匹配,则依据所述参数列表中各云主机的排列次序形成测试顺序,并按照所述参数列表中各云主机的排列次序依次将所述参数列表中各云主机的参数分别上传至所述第一分区的服务器;
根据所述测试顺序依次调用所述第一分区的服务器,完成所述参数列表中各云主机的镜像测试。
优选地,所述依据所述参数列表中各云主机的排列次序形成测试顺序的步骤之前,包括:
获取所述参数列表中的各云主机的测试标签,其中,所述测试标签包括测试优先等级;
按照所述测试优先等级由高到低重新排序形成优先级排序;
判断同一优先级排序号中是否包括多个云主机;
若是,则获取同一优先级排序号中的各云主机的参数分别与所述第一分区的服务器参数的匹配时间;
按照所述匹配时间由远及近的方式,调整同一优先级排序号中的各云主机的排序,形成所述测试顺序。
优选地,控制所述第一分区的服务器将所述待测试镜像对应的镜像模板测试的shell脚本上传至所述云主机的步骤,包括:
判断当前时刻是否存在第三云主机发送调用多个分区的服务器的多个指令,其中,所述多个分区至少包括第二分区和第三分区,所述第二分区以及所述第三分区分别为所述云平台中所有分区中的任意一个分区;
若是,则将所述第三云主机对应的参数,发送至所述第二分区和所述第三分区分别对应的服务器,其中,所述第二分区和所述第三分区分别对应的服务器的IP不同;
在所述第二分区和所述第三分区分别对应的服务器上同时测试所述第三云主机。
优选地,控制所述第一分区的服务器将所述待测试镜像对应的镜像模板测试的shell脚本上传至所述云主机的步骤,包括:
判断当前时刻是否存在多个指定云主机一一对应调用多个指定分区的服务器的指令;
若是,则分别判断各所述指定云主机是否分别与其调用分区的服务器一一对应匹配;
若是,则根据对应的匹配关系,将各所述指定云主机分别对应的参数,分别发送至各所述指定分区一一对应的服务器上;
在各所述指定分区的服务器上分别同步测试各自匹配的所述指定云主机。
本申请还提供了一种镜像测试装置,包括:
部署模块,用于根据部署脚本将待镜像模板测试的shell脚本部署至云平台执行模板测试的第一分区的服务器上,其中,所述shell脚本为预先编写好的,包括执行模板测试时的各种参量,所述第一分区为所述云平台中所有分区中的任意一个,所述云平台中的每个分区分别对应一个服务器;
创建模块,用于将待测试镜像根据预设创建脚本创建所述待测试镜像对应的云主机,所述云主机携带云主机的ip、用户名及密码;
关联模块,用于将所述云主机携带的ip、用户名及密码,传递至测试所述待测试镜像的所述云平台的第一分区的服务器,实现所述第一分区的服务器与所述云主机的关联连接;
判断模块,用于判断所述第一分区的服务器是否被调用;
控制模块,用于若是,则控制所述第一分区的服务器将所述待测试镜像对应的镜像模板测试的shell脚本上传至所述云主机;
获取模块,用于获取所述云主机执行所述shell脚本返回的测试结果。
本申请还提供了一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现上述方法的步骤。
本申请还提供了一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述的方法的步骤。
本申请通过提前将测试模板的shell脚本放置到预先搭建好的svr(svrver,服务器,简称svr)上,且确保云平台的每个可用分区都有一个预先搭建好的svr。当接收到模板测试任务后,只需要调用svr自动分发模板测试的shell脚本到对应的云主机上进行测试,执行并返回测试结果,提高了测试的效率和成功率。
附图说明
图1本申请一实施例的镜像测试方法流程示意图;
图2本申请一实施例的镜像测试装置结构示意图;
图3本申请一实施例的计算机设备内部结构示意图。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
参照图1,本申请一实施例的镜像测试方法,包括:
S1:根据部署脚本将待镜像模板测试的shell脚本部署至云平台执行模板测试的第一分区的服务器上,其中,所述shell脚本为预先编写好的,包括执行模板测试时的各种参量,所述第一分区为所述云平台中所有分区中的任意一个,所述云平台中的每个分区分别对应一个服务器。
S2:将待测试镜像根据预设创建脚本创建所述待测试镜像对应的云主机,所述云主机携带云主机的ip、用户名及密码。
S3:将所述云主机携带的ip、用户名及密码,传递至测试所述待测试镜像的所述云平台的第一分区的服务器,实现所述第一分区的服务器与所述云主机的关联连接。
S4:判断所述第一分区的服务器是否被调用。
S5:若是,则控制所述第一分区的服务器将所述待测试镜像对应的镜像模板测试的shell脚本上传至所述云主机。
S6:获取所述云主机执行所述shell脚本返回的测试结果。
本申请通过提前将测试模板的shell脚本放置到预先搭建好的svr(svrver,服务器,简称svr)上,且确保云平台的每个可用分区都有一个预先搭建好的svr。shell脚本放置通过sz命令传到对应的linux服务器上即可。当接收到模板测试任务后,只需要调用svr自动分发模板测试的shell脚本到对应的云主机上进行镜像测试,执行并返回测试结果,通过模板测试镜像提高了测试的效率和成功率。测试时点击运行,云平台会自动发起一个http请求到svr,然后svr会自动去连接对应的云主机,然后将shell脚本上传至云主机进行测试。上述云主机通过用户预先在云上通过预设创建脚本创建得到,每个云主机对应一个预设创建脚本,创建成功后会根据创建脚本的编码信息以及所处云平台的分区信息,生成该云主机对应的唯一主机IP;并根据预设创建脚本中设定的名称信息和密码信息,生成对应云主机的用户名及密码;对应云主机的唯一主机IP以及该云主机的测试镜像,通过预设创建脚本的名称将预设创建脚本下发至该云主机,以通过创建脚本中的程序信息固定该云主机的程序。根据待测试镜像的所对应的云主机实现待测试镜像与分区的svr对应。比如在创建华南的云主机就用华南svr,创建华北云主机就用华北svr,以便测试人员及时控制测试情况。上述参量包括模板测试对应的操作系统、cpu、内存、主机名、ntp、yum源、dns以及初始化云主机需要的各类agent,上述agent指能自主活动的软件或者硬件实体,比如各种进程等。各分区的svr均具有唯一的IP地址,部署脚本中包括预部署分区的svr的IP地址的信息数据,通过相同的IP地址实现部署脚本和分区的svr一一对应关联。shell脚本与部署脚本通过文件编号实现一一对应。当shell脚本更换至其他分区的svr时,通过更新与其对应的部署脚本中的IP地址的信息数据,实现更换调用其他分区的svr,操作更便捷。
进一步地,所述参量包括操作系统os、cpu、内存以及主机名,判断所述第一分区的服务器是否被调用的步骤S4,包括:
S41:获取所述云主机的操作系统os、cpu、内存以及主机名;
S42:判断所述云主机的操作系统os、cpu、内存以及主机名,是否与所述第一分区的服务器中的shell脚本携带的操作系统os、cpu、内存以及主机名一一对应相同;
S43:若相同,则依次调取对应的检查指令分别检查ntp是否匹配、是否配置yum源、检查dns是否匹配、检查初始化云主机需要的各类进程是否已配置,所述进程包括快照进程、下发请求进程、监控进程和安全进程;
S44:若均已匹配,则判定所述第一分区的服务器被调用。
本申请通过云主机的参量与分区的服务器中的shell脚本携带的参量一一对应相同,实现第一分区服务器与云主机的关联,提高服务器对镜像测试的精准匹配。通过检测第一分区服务器与云主机的关联后的各项运行配置均已匹配完善,即云主机的运行配置已满足测试要求,则认为第一分区服务器被当前镜像对应的云主机调用。本申请其他实施例在第一分区服务器与云主机的关联后的各项运行配置未匹配完善时,或匹配失败后均可被其他云主机进行调用,以提高分区服务器的使用率。NTP检查就是执行date命令查看是否能正确展示时间;Yum检查使用yum install命令任意安装一个包,看是否能成功;dns检查使用nslookup命令,查看配置的dns是否能解析出来;Agent检查按照ps-elf|grep agent命令,查看云主机启动了哪些进程。执行ps–elf|grep agent,会展示所有agent,并列展示。
进一步地,所述云平台的同一分区对应多个不同的云主机,控制所述第一分区的服务器将所述待测试镜像对应的镜像模板测试的shell脚本上传至所述云主机的步骤S5,包括:
S51:判断第一云主机是否调用所述第一分区的服务器,其中,所述第一云主机为所述第一分区中的任一待测试镜像对应的云主机;
S52:若是,则将第一云主机对应的参量传递至所述第一分区的服务器;
S53:判断所述第一云主机是否调用完所述第一分区的服务器;
S54:若是,则释放所述第一分区的服务器;
S55:判断第二云主机是否调用所述第一分区的服务器,其中,所述第二云主机为所述第一分区中的任一待测试镜像对应的云主机;
S56:若是,则将所述第二云主机对应的参量传递至所述第一分区的服务器;
S57:根据所述第一云主机和所述第二云主机的测试过程依次完成所述第一分区各云主机的镜像测试。
本实施例中云平台的一个分区只有一个svr,确定调用哪个分区的svr测试云主机的测试镜像,则svr便固定;同一分区的svr可支撑不同云主机的测试镜像分别测试,通过轮流调用该分区的svr进行关联测试,以提高分区的svr利用率。本实施例通过分析是否输出测试报告的动作,判断是否调用完svr,测试完成后无论测试失败还是成功,均会输出测试报告给予反馈测试结果。本实施例同一分区的svr对不同云主机的测试镜像分别测试时,通过上传参数、测试完毕然后释放服务器的方式进行依次调用,提高测试精准度。上述“第一”、“第二”等用语仅用于区别,不用于限定,其他处的类似用语作用相同,不赘述。
进一步地,所述云平台的同一分区对应多个不同的云主机,控制所述第一分区的服务器将所述待测试镜像对应的镜像模板测试的shell脚本上传至所述云主机的步骤S5,包括:
S501:获取所述第一分区的服务器对应匹配的所有云主机的参数列表;
S502:将所有云主机的参数列表中各云主机的参数一一与所述第一分区的服务器进行匹配;
S503:若均匹配,则依据所述参数列表中各云主机的排列次序形成测试顺序,并按照所述参数列表中各云主机的排列次序依次将所述参数列表中各云主机的参数分别上传至所述第一分区的服务器;
S504:根据所述测试顺序依次调用所述第一分区的服务器,完成所述参数列表中各云主机的镜像测试。
本实施例同一分区的svr支撑不同云主机的测试镜像分别测试时,通过参数列表统一执行上传参数,并在特定的测试顺序下依次调用分区的服务器,统一测试完毕后再释放服务器的方式进行批量测试,提高测试效率。上述测试顺序包括参数列表中的排序,也包括依据参数列表进行优化的排序。
进一步地,所述依据所述参数列表中各云主机的排列次序形成测试顺序的步骤S503之前,包括:
S503a:获取所述参数列表中的各云主机的测试标签,其中,所述测试标签包括测试优先等级;
S503b:按照所述测试优先等级由高到低重新排序形成优先级排序;
S503c:判断同一优先级排序号中是否包括多个云主机;
S503d:若是,则获取同一优先级排序号中的各云主机的参数分别与所述第一分区的服务器参数的匹配时间;
S503e:按照所述匹配时间由远及近的方式,调整同一优先级排序号中的各云主机的排序,形成所述测试顺序。
本实施例通过优化后测试顺序,以满足特殊测试任务的需求,然后根据优化后的测试顺序下依次调用分区的服务器时。上述优化后测试顺序中包含了测试优先级排序,且结合参数列表中的原有排序形成。比如参数列表中排序依次包括A、B、C、D、E、F、G、H、I、J、K、L、M、N,优先级等级最高的包括D、H、F、M;优先级次高的包括B、J、K;优先级比较低的包括A、C、N、E;优先级最低的包括:G、I、L。则最后优化后测试顺序为D、F、H、M、B、J、K、A、C、E、N、G、I、L。
进一步地,控制所述第一分区的服务器将所述待测试镜像对应的镜像模板测试的shell脚本上传至所述云主机的步骤S5,包括:
S58:判断当前时刻是否存在第三云主机发送调用多个分区的服务器的多个指令,其中,所述多个分区至少包括第二分区和第三分区,所述第二分区以及所述第三分区分别为所述云平台中所有分区中的任意一个分区;
S59:若是,则将所述第三云主机对应的参数,发送至所述第二分区和所述第三分区分别对应的服务器,其中,所述第二分区和所述第三分区分别对应的服务器的IP不同;
S60:在所述第二分区和所述第三分区分别对应的服务器上同时测试所述第三云主机。
本实施例,可通过调用不同分区的svr分别支撑同一云主机的测试镜像进行同步测试,以便通过各分区的svr对同一第三云主机的测试后的测试报告,实现对各分区的svr的运行性能进行评估,包括对运行速率、测试数据调取流畅度等进行评估。上述第三云主机为任一预设创建脚本创建的云主机。上述将第三云主机对应的参数,发送至第二分区和第三分区分别对应的服务器,可同时发送,也可预设时间范围内依次发送不作限定,但间隔时间不宜太久,以防因为云主机自身的性能变化,影响对分区服务器的评估结果。通过服务器的IP定义各测试报告,以便通过测试报告对各分区服务器的运行性能进行精准对比评估。
进一步地,控制所述第一分区的服务器将所述待测试镜像对应的镜像模板测试的shell脚本上传至所述云主机的步骤S5,包括:
S505:判断当前时刻是否存在多个指定云主机一一对应调用多个指定分区的服务器的指令;
S506:若是,则分别判断各所述指定云主机是否分别与其调用分区的服务器一一对应匹配;
S507:若是,则根据对应的匹配关系,将各所述指定云主机分别对应的参数,分别发送至各所述指定分区一一对应的服务器上;
S508:在各所述指定分区的服务器上分别同步测试各自匹配的所述指定云主机。
在测试的过程中可以通过不同分区的服务器同时分别支撑多个待测试镜像进行测试,只需要使用不同创建脚本创建各指定云主机,并在不同分区测试各指定云主机的测试镜像,实现多个测试镜像同时并行测试。在实际测试的过程中,可能不会每个指定云主机的测试镜像都是测试通过的,当一个测试镜像执行shell脚本的过程中出现错误,因为调用的svr不同,各测试镜像的测试过程互不干扰,并不会影响到其他测试镜像的测试;同样某个可用分区测试失败时,不影响其他可用分区的测试。使用本方案进行模板测试,极大提高测试镜像的使用效率。既不需要在每个可用分区重复测试镜像,任何一个可用分区对该测试镜像的测试结果,可直接移用至其他可用分区,也可以对不同可用分区上同时上架的测试镜像一起并发测试,也可以通过在同一可用分区上轮流调用svr进行测试,满足测试人员的各种测试方案设计,提高测试效率。测试人员直接调用测试镜像的svr,无需重新搭建测试平台,快捷方便,学习成本也不高。测试镜像前只需要学习该测试工具,也降低了学习的成本,运用工具即可直接进行测试。对于测试失败的镜像,也只需要根据对应失败的案例,对失败的结果进行分析即可,减少人为操作的漏测率。
参照图2,本申请一实施例的镜像测试装置,包括:
部署模块1,用于根据部署脚本将待镜像模板测试的shell脚本部署至云平台执行模板测试的第一分区的服务器上,其中,所述shell脚本为预先编写好的,包括执行模板测试时的各种参量,所述第一分区为所述云平台中所有分区中的任意一个,所述云平台中的每个分区分别对应一个服务器。
创建模块2,用于将待测试镜像根据预设创建脚本创建所述待测试镜像对应的云主机,所述云主机携带云主机的ip、用户名及密码;
关联模块3,用于将所述云主机携带的ip、用户名及密码,传递至测试所述待测试镜像的所述云平台的第一分区的服务器,实现所述第一分区的服务器与所述云主机的关联连接;
判断模块4,用于判断所述第一分区的服务器是否被调用;
控制模块5,用于若是,则控制所述第一分区的服务器将所述待测试镜像对应的镜像模板测试的shell脚本上传至所述云主机;
获取模块6,用于获取所述云主机执行所述shell脚本返回的测试结果。
本申请通过提前将测试模板的shell脚本放置到预先搭建好的svr(svrver,服务器,简称svr)上,且确保云平台的每个可用分区都有一个预先搭建好的svr。shell脚本放置通过sz命令传到对应的linux服务器上即可。当接收到模板测试任务后,只需要调用svr自动分发模板测试的shell脚本到对应的云主机上进行镜像测试,执行并返回测试结果,通过模板测试镜像提高了测试的效率和成功率。测试时点击运行,云平台会自动发起一个http请求到svr,然后svr会自动去连接对应的云主机,然后将shell脚本上传至云主机进行测试。上述云主机通过用户预先在云上通过预设创建脚本创建得到,每个云主机对应一个预设创建脚本,创建成功后会根据创建脚本的编码信息以及所处云平台的分区信息,生成该云主机对应的唯一主机IP;并根据预设创建脚本中设定的名称信息和密码信息,生成对应云主机的用户名及密码;对应云主机的唯一主机IP以及该云主机的测试镜像,通过预设创建脚本的名称将预设创建脚本下发至该云主机,以通过创建脚本中的程序信息固定该云主机的程序。根据待测试镜像的所对应的云主机实现待测试镜像与分区的svr对应。比如在平安云创建华南的云主机就用华南svr,创建华北云主机就用华北svr,以便测试人员及时控制测试情况。上述参量包括模板测试对应的操作系统、cpu、内存、主机名、ntp、yum源、dns以及初始化云主机需要的各类agent,上述agent指能自主活动的软件或者硬件实体,比如各种进程等。各分区的svr均具有唯一的IP地址,部署脚本中包括预部署分区的svr的IP地址的信息数据,通过相同的IP地址实现部署脚本和分区的svr一一对应关联。shell脚本与部署脚本通过文件编号实现一一对应。当shell脚本更换至其他分区的svr时,通过更新与其对应的部署脚本中的IP地址的信息数据,实现更换调用其他分区的svr,操作更便捷。
进一步地,所述参量包括操作系统os、cpu、内存以及主机名,判断模块4,包括:
第一获取单元,用于获取所述云主机的操作系统os、cpu、内存以及主机名;
第一判断单元,用于判断所述云主机的操作系统os、cpu、内存以及主机名,是否与所述第一分区的服务器中的shell脚本携带的操作系统os、cpu、内存以及主机名一一对应相同;
调取单元,用于若相同,则依次调取对应的检查指令分别检查ntp是否匹配、是否配置yum源、检查dns是否匹配、检查初始化云主机需要的各类进程是否已配置,所述进程包括快照进程、下发请求进程、监控进程和安全进程;
判定单元,用于若均已匹配,则判定所述第一分区的服务器被调用。
本申请通过云主机的参量与分区的服务器中的shell脚本携带的参量一一对应相同,实现第一分区服务器与云主机的关联,提高服务器对镜像测试的精准匹配。通过检测第一分区服务器与云主机的关联后的各项运行配置均已匹配完善,即云主机的运行配置已满足测试要求,则认为第一分区服务器被当前镜像对应的云主机调用。本申请其他实施例在第一分区服务器与云主机的关联后的各项运行配置未匹配完善时,或匹配失败后均可被其他云主机进行调用,以提高分区服务器的使用率。NTP检查就是执行date命令查看是否能正确展示时间;Yum检查使用yum install命令任意安装一个包,看是否能成功;dns检查使用nslookup命令,查看配置的dns是否能解析出来;Agent检查按照ps-elf|grep agent命令,查看云主机启动了哪些进程。执行ps–elf|grep agent,会展示所有agent,并列展示。
进一步地,所述云平台的同一分区对应多个不同的云主机,控制模块5,包括:
第二判断单元,用于判断第一云主机是否调用所述第一分区的服务器,其中,所述第一云主机为所述第一分区中的任一待测试镜像对应的云主机;
第一传递单元,用于若是,则将第一云主机对应的参量传递至所述第一分区的服务器;
第三判断单元,用于判断所述第一云主机是否调用完所述第一分区的服务器;
释放单元,用于若是,则释放所述第一分区的服务器;
第四判断单元,用于判断第二云主机是否调用所述第一分区的服务器,其中,所述第二云主机为所述第一分区中的任一待测试镜像对应的云主机;
第二传递单元,用于若是,则将所述第二云主机对应的参量传递至所述第一分区的服务器;
第一测试单元,用于根据所述第一云主机和所述第二云主机的测试过程依次完成所述第一分区各云主机的镜像测试。
本实施例中云平台的一个分区只有一个svr,确定调用哪个分区的svr测试云主机的测试镜像,则svr便固定;同一分区的svr可支撑不同云主机的测试镜像分别测试,通过轮流调用该分区的svr进行关联测试,以提高分区的svr利用率。本实施例通过分析是否输出测试报告的动作,判断是否调用完svr,测试完成后无论测试失败还是成功,均会输出测试报告给予反馈测试结果。本实施例同一分区的svr对不同云主机的测试镜像分别测试时,通过上传参数、测试完毕然后释放服务器的方式进行依次调用,提高测试精准度。上述“第一”、“第二”等用语仅用于区别,不用于限定,其他处的类似用语作用相同,不赘述。
进一步地,所述云平台的同一分区对应多个不同的云主机,控制模块5,包括:
第二获取单元,用于获取所述第一分区的服务器对应匹配的所有云主机的参数列表;
匹配单元,用于将所有云主机的参数列表中各云主机的参数一一与所述第一分区的服务器进行匹配;
形成单元,用于若均匹配,则依据所述参数列表中各云主机的排列次序形成测试顺序,并按照所述参数列表中各云主机的排列次序依次将所述参数列表中各云主机的参数分别上传至所述第一分区的服务器;
第二测试单元,用于根据所述测试顺序依次调用所述第一分区的服务器,完成所述参数列表中各云主机的镜像测试。
本实施例同一分区的svr支撑不同云主机的测试镜像分别测试时,通过参数列表统一执行上传参数,并在特定的测试顺序下依次调用分区的服务器,统一测试完毕后再释放服务器的方式进行批量测试,提高测试效率。上述测试顺序包括参数列表中的排序,也包括依据参数列表进行优化的排序。
进一步地,控制模块5,包括:
第三获取单元,用于获取所述参数列表中的各云主机的测试标签,其中,所述测试标签包括测试优先等级;
排序单元,用于按照所述测试优先等级由高到低重新排序形成优先级排序;
第五判断单元,用于判断同一优先级排序号中是否包括多个云主机;
第四获取单元,用于若是,则获取同一优先级排序号中的各云主机的参数分别与所述第一分区的服务器参数的匹配时间;
调整单元,用于按照所述匹配时间由远及近的方式,调整同一优先级排序号中的各云主机的排序,形成所述测试顺序。
本实施例通过优化后测试顺序,以满足特殊测试任务的需求,然后根据优化后的测试顺序下依次调用分区的服务器时。上述优化后测试顺序中包含了测试优先级排序,且结合参数列表中的原有排序形成。比如参数列表中排序依次包括A、B、C、D、E、F、G、H、I、J、K、L、M、N,优先级等级最高的包括D、H、F、M;优先级次高的包括B、J、K;优先级比较低的包括A、C、N、E;优先级最低的包括:G、I、L。则最后优化后测试顺序为D、F、H、M、B、J、K、A、C、E、N、G、I、L。
进一步地,控制模块5,包括:
第六判断单元,用于判断当前时刻是否存在第三云主机发送调用多个分区的服务器的多个指令,其中,所述多个分区至少包括第二分区和第三分区,所述第二分区以及所述第三分区分别为所述云平台中所有分区中的任意一个分区;
第一发送单元,用于若是,则将所述第三云主机对应的参数,发送至所述第二分区和所述第三分区分别对应的服务器,其中,所述第二分区和所述第三分区分别对应的服务器的IP不同;
第三测试单元,用于在所述第二分区和所述第三分区分别对应的服务器上同时测试所述第三云主机。
本实施例,可通过调用不同分区的svr分别支撑同一云主机的测试镜像进行同步测试,以便通过各分区的svr对同一第三云主机的测试后的测试报告,实现对各分区的svr的运行性能进行评估,包括对运行速率、测试数据调取流畅度等进行评估。上述第三云主机为任一预设创建脚本创建的云主机。上述将第三云主机对应的参数,发送至第二分区和第三分区分别对应的服务器,可同时发送,也可预设时间范围内依次发送不作限定,但间隔时间不宜太久,以防因为云主机自身的性能变化,影响对分区服务器的评估结果。通过服务器的IP定义各测试报告,以便通过测试报告对各分区服务器的运行性能进行精准对比评估。
进一步地,控制模块5,包括:
第七判断单元,用于判断当前时刻是否存在多个指定云主机一一对应调用多个指定分区的服务器的指令;
第八判断单元,用于若是,则分别判断各所述指定云主机是否分别与其调用分区的服务器一一对应匹配;
第二发送单元,用于若是,则根据对应的匹配关系,将各所述指定云主机分别对应的参数,分别发送至各所述指定分区一一对应的服务器上;
第四测试单元,用于在各所述指定分区的服务器上分别同步测试各自匹配的所述指定云主机。
在测试的过程中可以通过不同分区的服务器同时分别支撑多个待测试镜像进行测试,只需要使用不同创建脚本创建各指定云主机,并在不同分区测试各指定云主机的测试镜像,实现多个测试镜像同时并行测试。在实际测试的过程中,可能不会每个指定云主机的测试镜像都是测试通过的,当一个测试镜像执行shell脚本的过程中出现错误,因为调用的svr不同,各测试镜像的测试过程互不干扰,并不会影响到其他测试镜像的测试;同样某个可用分区测试失败时,不影响其他可用分区的测试。使用本方案进行模板测试,极大提高测试镜像的使用效率。既不需要在每个可用分区重复测试镜像,任何一个可用分区对该测试镜像的测试结果,可直接移用至其他可用分区,也可以对不同可用分区上同时上架的测试镜像一起并发测试,也可以通过在同一可用分区上轮流调用svr进行测试,满足测试人员的各种测试方案设计,提高测试效率。测试人员直接调用测试镜像的svr,无需重新搭建测试平台,快捷方便,学习成本也不高。测试镜像前只需要学习该测试工具,也降低了学习的成本,运用工具即可直接进行测试。对于测试失败的镜像,也只需要根据对应失败的案例,对失败的结果进行分析即可,减少人为操作的漏测率。
参照图3,本申请实施例中还提供一种计算机设备,该计算机设备可以是服务器,其内部结构可以如图3所示。该计算机设备包括通过系统总线连接的处理器、存储器、网络接口和数据库。其中,该计算机设计的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统、计算机程序和数据库。该内存器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的数据库用于存储镜像测试过程需要的所有数据。该计算机设备的网络接口用于与外部的端通过网络连接通信。该计算机程序被处理器执行时以实现镜像测试方法。
上述处理器执行上述镜像测试方法,根据部署脚本将待镜像模板测试的shell脚本部署至云平台执行模板测试的第一分区的服务器上,其中,所述shell脚本为预先编写好的,包括执行模板测试时的各种参量,所述第一分区为所述云平台中所有分区中的任意一个,所述云平台中的每个分区分别对应一个服务器;将待测试镜像根据预设创建脚本创建所述待测试镜像对应的云主机,所述云主机携带云主机的ip、用户名及密码;将所述云主机携带的ip、用户名及密码,传递至测试所述待测试镜像的所述云平台的第一分区的服务器,实现所述第一分区的服务器与所述云主机的关联连接;判断所述第一分区的服务器是否被调用;若是,则控制所述第一分区的服务器将所述待测试镜像对应的镜像模板测试的shell脚本上传至所述云主机;获取所述云主机执行所述shell脚本返回的测试结果。
上述计算机设备,通过提前将测试模板的shell脚本放置到预先搭建好的svr(svrver,服务器,简称svr)上,且确保云平台的每个可用分区都有一个预先搭建好的svr。当接收到模板测试任务后,只需要调用svr自动分发模板测试的shell脚本到对应的云主机上进行测试,执行并返回测试结果,提高了测试的效率和成功率。
在一个实施例中,所述参量包括操作系统os、cpu、内存以及主机名,上述处理器判断所述第一分区的服务器是否被调用的步骤,包括:获取所述云主机的操作系统os、cpu、内存以及主机名;判断所述云主机的操作系统os、cpu、内存以及主机名,是否与所述第一分区的服务器中的shell脚本携带的操作系统os、cpu、内存以及主机名一一对应相同;若相同,则依次调取对应的检查指令分别检查ntp是否匹配、是否配置yum源、检查dns是否匹配、检查初始化云主机需要的各类进程是否已配置,所述进程包括快照进程、下发请求进程、监控进程和安全进程;若均已匹配,则判定所述第一分区的服务器被调用。
在一个实施例中,所述云平台的同一分区对应多个不同的云主机,上述处理器控制所述第一分区的服务器将所述待测试镜像对应的镜像模板测试的shell脚本上传至所述云主机的步骤,包括:判断第一云主机是否调用所述第一分区的服务器,其中,所述第一云主机为所述第一分区中的任一待测试镜像对应的云主机;若是,则将第一云主机对应的参量传递至所述第一分区的服务器;判断所述第一云主机是否调用完所述第一分区的服务器;若是,则释放所述第一分区的服务器;判断第二云主机是否调用所述第一分区的服务器,其中,所述第二云主机为所述第一分区中的任一待测试镜像对应的云主机;若是,则将所述第二云主机对应的参量传递至所述第一分区的服务器;根据所述第一云主机和所述第二云主机的测试过程依次完成所述第一分区各云主机的镜像测试。
在一个实施例中,所述云平台的同一分区对应多个不同的云主机,上述处理器控制所述第一分区的服务器将所述待测试镜像对应的镜像模板测试的shell脚本上传至所述云主机的步骤,包括:获取所述第一分区的服务器对应匹配的所有云主机的参数列表;将所有云主机的参数列表中各云主机的参数一一与所述第一分区的服务器进行匹配;若均匹配,则依据所述参数列表中各云主机的排列次序形成测试顺序,并按照所述参数列表中各云主机的排列次序依次将所述参数列表中各云主机的参数分别上传至所述第一分区的服务器;根据所述测试顺序依次调用所述第一分区的服务器,完成所述参数列表中各云主机的镜像测试。
在一个实施例中,上述处理器依据所述参数列表中各云主机的排列次序形成测试顺序的步骤之前,包括:获取所述参数列表中的各云主机的测试标签,其中,所述测试标签包括测试优先等级;按照所述测试优先等级由高到低重新排序形成优先级排序;判断同一优先级排序号中是否包括多个云主机;若是,则获取同一优先级排序号中的各云主机的参数分别与所述第一分区的服务器参数的匹配时间;按照所述匹配时间由远及近的方式,调整同一优先级排序号中的各云主机的排序,形成所述测试顺序。
在一个实施例中,上述处理器控制所述第一分区的服务器将所述待测试镜像对应的镜像模板测试的shell脚本上传至所述云主机的步骤,包括:判断当前时刻是否存在第三云主机发送调用多个分区的服务器的多个指令,其中,所述多个分区至少包括第二分区和第三分区,所述第二分区以及所述第三分区分别为所述云平台中所有分区中的任意一个分区;若是,则将所述第三云主机对应的参数,发送至所述第二分区和所述第三分区分别对应的服务器,其中,所述第二分区和所述第三分区分别对应的服务器的IP不同;在所述第二分区和所述第三分区分别对应的服务器上同时测试所述第三云主机。
在一个实施例中,上述处理器控制所述第一分区的服务器将所述待测试镜像对应的镜像模板测试的shell脚本上传至所述云主机的步骤,包括:判断当前时刻是否存在多个指定云主机一一对应调用多个指定分区的服务器的指令;若是,则分别判断各所述指定云主机是否分别与其调用分区的服务器一一对应匹配;若是,则根据对应的匹配关系,将各所述指定云主机分别对应的参数,分别发送至各所述指定分区一一对应的服务器上;在各所述指定分区的服务器上分别同步测试各自匹配的所述指定云主机。
本领域技术人员可以理解,图3中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定。
本申请一实施例还提供一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现镜像测试方法,根据部署脚本将待镜像模板测试的shell脚本部署至云平台执行模板测试的第一分区的服务器上,其中,所述shell脚本为预先编写好的,包括执行模板测试时的各种参量,所述第一分区为所述云平台中所有分区中的任意一个,所述云平台中的每个分区分别对应一个服务器;将待测试镜像根据预设创建脚本创建所述待测试镜像对应的云主机,所述云主机携带云主机的ip、用户名及密码;将所述云主机携带的ip、用户名及密码,传递至测试所述待测试镜像的所述云平台的第一分区的服务器,实现所述第一分区的服务器与所述云主机的关联连接;判断所述第一分区的服务器是否被调用;若是,则控制所述第一分区的服务器将所述待测试镜像对应的镜像模板测试的shell脚本上传至所述云主机;获取所述云主机执行所述shell脚本返回的测试结果。
上述计算机可读存储介质,通过提前将测试模板的shell脚本放置到预先搭建好的svr上,且确保云平台的每个可用分区都有一个预先搭建好的svr。当接收到模板测试任务后,只需要调用svr自动分发模板测试的shell脚本到对应的云主机上进行测试,执行并返回测试结果,提高了测试的效率和成功率。
在一个实施例中,所述参量包括操作系统os、cpu、内存以及主机名,上述处理器判断所述第一分区的服务器是否被调用的步骤,包括:获取所述云主机的操作系统os、cpu、内存以及主机名;判断所述云主机的操作系统os、cpu、内存以及主机名,是否与所述第一分区的服务器中的shell脚本携带的操作系统os、cpu、内存以及主机名一一对应相同;若相同,则依次调取对应的检查指令分别检查ntp是否匹配、是否配置yum源、检查dns是否匹配、检查初始化云主机需要的各类进程是否已配置,所述进程包括快照进程、下发请求进程、监控进程和安全进程;若均已匹配,则判定所述第一分区的服务器被调用。
在一个实施例中,所述云平台的同一分区对应多个不同的云主机,上述处理器控制所述第一分区的服务器将所述待测试镜像对应的镜像模板测试的shell脚本上传至所述云主机的步骤,包括:判断第一云主机是否调用所述第一分区的服务器,其中,所述第一云主机为所述第一分区中的任一待测试镜像对应的云主机;若是,则将第一云主机对应的参量传递至所述第一分区的服务器;判断所述第一云主机是否调用完所述第一分区的服务器;若是,则释放所述第一分区的服务器;判断第二云主机是否调用所述第一分区的服务器,其中,所述第二云主机为所述第一分区中的任一待测试镜像对应的云主机;若是,则将所述第二云主机对应的参量传递至所述第一分区的服务器;根据所述第一云主机和所述第二云主机的测试过程依次完成所述第一分区各云主机的镜像测试。
在一个实施例中,所述云平台的同一分区对应多个不同的云主机,上述处理器控制所述第一分区的服务器将所述待测试镜像对应的镜像模板测试的shell脚本上传至所述云主机的步骤,包括:获取所述第一分区的服务器对应匹配的所有云主机的参数列表;将所有云主机的参数列表中各云主机的参数一一与所述第一分区的服务器进行匹配;若均匹配,则依据所述参数列表中各云主机的排列次序形成测试顺序,并按照所述参数列表中各云主机的排列次序依次将所述参数列表中各云主机的参数分别上传至所述第一分区的服务器;根据所述测试顺序依次调用所述第一分区的服务器,完成所述参数列表中各云主机的镜像测试。
在一个实施例中,上述处理器依据所述参数列表中各云主机的排列次序形成测试顺序的步骤之前,包括:获取所述参数列表中的各云主机的测试标签,其中,所述测试标签包括测试优先等级;按照所述测试优先等级由高到低重新排序形成优先级排序;判断同一优先级排序号中是否包括多个云主机;若是,则获取同一优先级排序号中的各云主机的参数分别与所述第一分区的服务器参数的匹配时间;按照所述匹配时间由远及近的方式,调整同一优先级排序号中的各云主机的排序,形成所述测试顺序。
在一个实施例中,上述处理器控制所述第一分区的服务器将所述待测试镜像对应的镜像模板测试的shell脚本上传至所述云主机的步骤,包括:判断当前时刻是否存在第三云主机发送调用多个分区的服务器的多个指令,其中,所述多个分区至少包括第二分区和第三分区,所述第二分区以及所述第三分区分别为所述云平台中所有分区中的任意一个分区;若是,则将所述第三云主机对应的参数,发送至所述第二分区和所述第三分区分别对应的服务器,其中,所述第二分区和所述第三分区分别对应的服务器的IP不同;在所述第二分区和所述第三分区分别对应的服务器上同时测试所述第三云主机。
在一个实施例中,上述处理器控制所述第一分区的服务器将所述待测试镜像对应的镜像模板测试的shell脚本上传至所述云主机的步骤,包括:判断当前时刻是否存在多个指定云主机一一对应调用多个指定分区的服务器的指令;若是,则分别判断各所述指定云主机是否分别与其调用分区的服务器一一对应匹配;若是,则根据对应的匹配关系,将各所述指定云主机分别对应的参数,分别发送至各所述指定分区一一对应的服务器上;在各所述指定分区的服务器上分别同步测试各自匹配的所述指定云主机。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,上述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的和实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可以包括只读存储器(ROM)、可编程ROM(PROM)、电可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)或闪存。易失性存储器可包括随机存取存储器(RAM)或者外部高速缓冲存储器。作为说明而非局限,RAM以多种形式可得,诸如静态RAM(SRAM)、动态RAM(DRAM)、同步DRAM(SDRAM)、双速据率SDRAM(SSRSDRAM)、增强型SDRAM(ESDRAM)、同步链路(Synchlink)DRAM(SLDRAM)、存储器总线(Rambus)直接RAM(RDRAM)、直接存储器总线动态RAM(DRDRAM)、以及存储器总线动态RAM(RDRAM)等。
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、装置、物品或者方法不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、装置、物品或者方法所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、装置、物品或者方法中还存在另外的相同要素。
以上所述仅为本申请的优选实施例,并非因此限制本申请的专利范围,凡是利用本申请说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本申请的专利保护范围内。

Claims (10)

1.一种镜像测试方法,其特征在于,包括:
根据部署脚本将待镜像模板测试的shell脚本部署至云平台执行模板测试的第一分区的服务器上,其中,所述shell脚本为预先编写好的,包括执行模板测试时的各种参量,所述第一分区为所述云平台中所有分区中的任意一个,所述云平台中的每个分区分别对应一个服务器;
将所述待测试镜像根据预设创建脚本创建所述待测试镜像对应的云主机,所述云主机携带云主机的ip、用户名及密码;
将所述云主机携带的ip、用户名及密码,传递至测试所述待测试镜像的所述云平台的第一分区的服务器,实现所述第一分区的服务器与所述云主机的关联连接;
判断所述第一分区的服务器是否被调用;
若是,则控制所述第一分区的服务器将所述待测试镜像对应的镜像模板测试的shell脚本上传至所述云主机;
获取所述云主机执行所述shell脚本返回的测试结果。
2.根据权利要求1所述的镜像测试方法,其特征在于,所述参量包括操作系统os、cpu、内存以及主机名,所述判断所述第一分区的服务器是否被调用的步骤,包括:
获取所述云主机的操作系统os、cpu、内存以及主机名;
判断所述云主机的操作系统os、cpu、内存以及主机名,是否与所述第一分区的服务器中的shell脚本携带的操作系统os、cpu、内存以及主机名一一对应相同;
若相同,则依次调取对应的检查指令分别检查ntp是否匹配、是否配置yum源、检查dns是否匹配、检查初始化云主机需要的各类进程是否已配置,所述进程包括快照进程、下发请求进程、监控进程和安全进程;
若均已匹配,则判定所述第一分区的服务器被调用。
3.根据权利要求2所述的镜像测试方法,其特征在于,所述云平台的同一分区对应多个不同的云主机,控制所述第一分区的服务器将所述待测试镜像对应的镜像模板测试的shell脚本上传至所述云主机的步骤,包括:
判断第一云主机是否调用所述第一分区的服务器,其中,所述第一云主机为所述第一分区中的任一待测试镜像对应的云主机;
若是,则将第一云主机对应的参量传递至所述第一分区的服务器;
判断所述第一云主机是否调用完所述第一分区的服务器;
若是,则释放所述第一分区的服务器;
判断第二云主机是否调用所述第一分区的服务器,其中,所述第二云主机为所述第一分区中的任一待测试镜像对应的云主机;
若是,则将所述第二云主机对应的参量传递至所述第一分区的服务器;
根据所述第一云主机和所述第二云主机的测试过程依次完成所述第一分区各云主机的镜像测试。
4.根据权利要求2所述的镜像测试方法,其特征在于,所述云平台的同一分区对应多个不同的云主机,控制所述第一分区的服务器将所述待测试镜像对应的镜像模板测试的shell脚本上传至所述云主机的步骤,包括:
获取所述第一分区的服务器对应匹配的所有云主机的参数列表;
将所有云主机的参数列表中各云主机的参数一一与所述第一分区的服务器进行匹配;
若均匹配,则依据所述参数列表中各云主机的排列次序形成测试顺序,并按照所述参数列表中各云主机的排列次序依次将所述参数列表中各云主机的参数分别上传至所述第一分区的服务器;
根据所述测试顺序依次调用所述第一分区的服务器,完成所述参数列表中各云主机的镜像测试。
5.根据权利要求4所述的镜像测试方法,其特征在于,所述依据所述参数列表中各云主机的排列次序形成测试顺序的步骤之前,包括:
获取所述参数列表中的各云主机的测试标签,其中,所述测试标签包括测试优先等级;
按照所述测试优先等级由高到低重新排序形成优先级排序;
判断同一优先级排序号中是否包括多个云主机;
若是,则获取同一优先级排序号中的各云主机的参数分别与所述第一分区的服务器参数的匹配时间;
按照所述匹配时间由远及近的方式,调整同一优先级排序号中的各云主机的排序,形成所述测试顺序。
6.根据权利要求2所述的镜像测试方法,其特征在于,控制所述第一分区的服务器将所述待测试镜像对应的镜像模板测试的shell脚本上传至所述云主机的步骤,包括:
判断当前时刻是否存在第三云主机发送调用多个分区的服务器的多个指令,其中,所述多个分区至少包括第二分区和第三分区,所述第二分区以及所述第三分区分别为所述云平台中所有分区中的任意一个分区;
若是,则将所述第三云主机对应的参数,发送至所述第二分区和所述第三分区分别对应的服务器,其中,所述第二分区和所述第三分区分别对应的服务器的IP不同;
在所述第二分区和所述第三分区分别对应的服务器上同时测试所述第三云主机。
7.根据权利要求2所述的镜像测试方法,其特征在于,控制所述第一分区的服务器将所述待测试镜像对应的镜像模板测试的shell脚本上传至所述云主机的步骤,包括:
判断当前时刻是否存在多个指定云主机一一对应调用多个指定分区的服务器的指令;
若是,则分别判断各所述指定云主机是否分别与其调用分区的服务器一一对应匹配;
若是,则根据对应的匹配关系,将各所述指定云主机分别对应的参数,分别发送至各所述指定分区一一对应的服务器上;
在各所述指定分区的服务器上分别同步测试各自匹配的所述指定云主机。
8.一种镜像测试装置,其特征在于,包括:
部署模块,用于根据部署脚本将待镜像模板测试的shell脚本部署至云平台执行模板测试的第一分区的服务器上,其中,所述shell脚本为预先编写好的,包括执行模板测试时的各种参量,所述第一分区为所述云平台中所有分区中的任意一个,所述云平台中的每个分区分别对应一个服务器;
创建模块,用于将所述待测试镜像根据预设创建脚本创建所述待测试镜像对应的云主机,所述云主机携带云主机的ip、用户名及密码;
关联模块,用于将所述云主机携带的ip、用户名及密码,传递至测试所述待测试镜像的所述云平台的第一分区的服务器,实现所述第一分区的服务器与所述云主机的关联连接;
判断模块,用于判断所述第一分区的服务器是否被调用;
控制模块,用于若所述第一分区的服务器被调用,则控制所述第一分区的服务器将所述待测试镜像对应的镜像模板测试的shell脚本上传至所述云主机;
获取模块,用于获取所述云主机执行所述shell脚本返回的测试结果。
9.一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至7中任一项所述方法的步骤。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至7中任一项所述的方法的步骤。
CN202010120604.5A 2020-02-26 2020-02-26 镜像测试方法、装置、计算机设备及存储介质 Pending CN111427768A (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN202010120604.5A CN111427768A (zh) 2020-02-26 2020-02-26 镜像测试方法、装置、计算机设备及存储介质
PCT/CN2020/098795 WO2021169114A1 (zh) 2020-02-26 2020-06-29 镜像测试方法、装置、计算机设备及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010120604.5A CN111427768A (zh) 2020-02-26 2020-02-26 镜像测试方法、装置、计算机设备及存储介质

Publications (1)

Publication Number Publication Date
CN111427768A true CN111427768A (zh) 2020-07-17

Family

ID=71547275

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010120604.5A Pending CN111427768A (zh) 2020-02-26 2020-02-26 镜像测试方法、装置、计算机设备及存储介质

Country Status (2)

Country Link
CN (1) CN111427768A (zh)
WO (1) WO2021169114A1 (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113010422A (zh) * 2021-03-17 2021-06-22 北京金山云网络技术有限公司 一种镜像文件测试方法、装置、电子设备及可读存储介质
CN115580563A (zh) * 2022-11-15 2023-01-06 阿里云计算有限公司 云网络的镜像数据处理方法、装置及电子设备

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114675893B (zh) * 2022-04-19 2023-07-14 苏州浪潮智能科技有限公司 一种驱动的管理方法、装置及计算机设备

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1310446C (zh) * 2002-08-20 2007-04-11 华为技术有限公司 镜像测试方法
US20130304901A1 (en) * 2012-05-11 2013-11-14 James Malnati Automated integration of disparate system management tools
US9940377B1 (en) * 2014-09-16 2018-04-10 Amazon Technologies, Inc. Instant copies of storage volumes
CN110008106A (zh) * 2018-01-04 2019-07-12 北京奇虎科技有限公司 代码测试方法、装置和计算机可读存储介质
CN110399307A (zh) * 2019-07-31 2019-11-01 网宿科技股份有限公司 一种测试方法、测试平台及目标服务器

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113010422A (zh) * 2021-03-17 2021-06-22 北京金山云网络技术有限公司 一种镜像文件测试方法、装置、电子设备及可读存储介质
CN115580563A (zh) * 2022-11-15 2023-01-06 阿里云计算有限公司 云网络的镜像数据处理方法、装置及电子设备
CN115580563B (zh) * 2022-11-15 2023-02-28 阿里云计算有限公司 云网络的镜像数据处理方法、装置及电子设备

Also Published As

Publication number Publication date
WO2021169114A1 (zh) 2021-09-02

Similar Documents

Publication Publication Date Title
US10140205B1 (en) Systems and methods for infrastructure validation
CN111427768A (zh) 镜像测试方法、装置、计算机设备及存储介质
US9965377B1 (en) Deploy pipeline for development packages
CN106970880B (zh) 一种分布式自动化软件测试方法及系统
US20150100829A1 (en) Method and system for selecting and executing test scripts
US20150100832A1 (en) Method and system for selecting and executing test scripts
CN110647332A (zh) 基于容器云的软件部署方法和装置
CN110138577B (zh) 集群创建方法、第一服务器以及可读存储介质
US20150100831A1 (en) Method and system for selecting and executing test scripts
CN111506358B (zh) 更新容器配置的方法及装置
CN110798376A (zh) 接口测试方法、装置、计算机设备和存储介质
CN116610332A (zh) 云存储部署方法、装置和可读存储介质
CN115269399A (zh) 设备稳定性测试方法、装置和计算机设备和存储介质
CN109194535A (zh) 一种终端测试系统及方法
KR20200048633A (ko) 소프트웨어 자동 테스트 시스템 및 방법
CN106445541B (zh) 软件构建方法、软件构建装置和软件构建系统
US20220103555A1 (en) Service deployment method, device, system, and computer-readable storage medium
CN111651352A (zh) 一种仓库代码的合并方法及装置
CN113127009A (zh) 大数据管理平台的自动化部署方法和装置
CN114286366A (zh) 无线网格网络升级方法、装置、主节点及存储介质
US11539612B2 (en) Testing virtualized network functions
CN108075933B (zh) 一种网络互通性测试方法及装置
CN112612706A (zh) 自动化测试方法、计算机设备及存储介质
CN109120433B (zh) 用于容器化部署主机的方法和装置
CN111078485A (zh) 一种实训结果智能检测方法

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
REG Reference to a national code

Ref country code: HK

Ref legal event code: DE

Ref document number: 40033508

Country of ref document: HK

SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination