CN107818029A - 一种云硬盘数据恢复一致性的自动化测试方法 - Google Patents
一种云硬盘数据恢复一致性的自动化测试方法 Download PDFInfo
- Publication number
- CN107818029A CN107818029A CN201711084616.1A CN201711084616A CN107818029A CN 107818029 A CN107818029 A CN 107818029A CN 201711084616 A CN201711084616 A CN 201711084616A CN 107818029 A CN107818029 A CN 107818029A
- Authority
- CN
- China
- Prior art keywords
- cloud
- disk
- data
- hard disk
- backup
- 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.)
- Granted
Links
- 238000012360 testing method Methods 0.000 title claims abstract description 17
- 238000011084 recovery Methods 0.000 claims abstract description 59
- 238000000034 method Methods 0.000 claims description 27
- 241000475481 Nebula Species 0.000 claims description 21
- 238000012795 verification Methods 0.000 claims description 20
- 230000006870 function Effects 0.000 claims description 17
- 230000008859 change Effects 0.000 claims description 9
- 230000000694 effects Effects 0.000 claims description 4
- 238000003860 storage Methods 0.000 description 4
- 230000014759 maintenance of location Effects 0.000 description 3
- 238000001514 detection method Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 1
- 230000008676 import Effects 0.000 description 1
- 238000007689 inspection Methods 0.000 description 1
- 230000008520 organization Effects 0.000 description 1
- 238000002360 preparation method Methods 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/14—Error detection or correction of the data by redundancy in operation
- G06F11/1402—Saving, restoring, recovering or retrying
- G06F11/1446—Point-in-time backing up or restoration of persistent data
- G06F11/1458—Management of the backup or restore process
- G06F11/1464—Management of the backup or restore process for networked environments
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/14—Error detection or correction of the data by redundancy in operation
- G06F11/1402—Saving, restoring, recovering or retrying
- G06F11/1446—Point-in-time backing up or restoration of persistent data
- G06F11/1458—Management of the backup or restore process
- G06F11/1469—Backup restoration techniques
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/36—Preventing errors by testing or debugging software
- G06F11/3668—Software testing
- G06F11/3672—Test management
- G06F11/3684—Test management for test design, e.g. generating new test cases
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/36—Preventing errors by testing or debugging software
- G06F11/3668—Software testing
- G06F11/3672—Test management
- G06F11/3688—Test management for test execution, e.g. scheduling of test suites
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Quality & Reliability (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明涉及一种云硬盘数据恢复一致性的自动化测试方法,包括以下步骤:步骤1)获取备份时云主机的开机和关机状态;步骤2)对云主机A处于关机状态数据盘恢复一致性进行校验;步骤3)对云主机A处于关机状态系统盘恢复一致性进行校验;步骤4)对云主机A处于开机状态数据盘恢复一致性进行校验;步骤5)对云主机A处于开机状态系统盘恢复一致性进行校验。与现有技术相比,本发明具有节省人力和时间,并且可以规避人为造成的错误等优点。
Description
技术领域
本发明涉及计算机软件自动化测试领域,尤其是涉及一种验证OpenStack平台LVM存储下的云硬盘数据恢复一致性的自动化测试方法,基于Robot Framework(简称RF)自动化测试框架,使用Python语言实现相关自定义关键字方法,通过在RF中调用这些方法,对获取到的测试对象的数据细节进行比较,从而达到验证OpenStack云主机的云硬盘数据恢复正确性的效果。
背景技术
OpenStack是一个开源的云计算管理平台项目,持几乎所有类型的云环境,项目目标是提供实施简单、可大规模扩展、丰富、标准统一的云计算管理平台。
目前该平台被越来越多的用户使用,从而备份平台中的数据则显得尤为重要。而OpenStack项目本身版本迭代速度极快,而为了能够快速响应市场,备份产品也需要快速迭代。那么就伴随着大量和重复的对OpenStack云硬盘恢复一致校验工作。
现有的检测备份和恢复后的OpenStack云硬盘是否一致的方法均为手工检测,其方法繁琐又不可靠。
发明内容
本发明的目的就是为了克服上述现有技术存在的缺陷而提供一种云硬盘数据恢复一致性的自动化测试方法,能够解决恢复后云主机的云硬盘数据和备份前云主机的云硬盘数据一致性验证的问题。
本发明的目的可以通过以下技术方案来实现:
一种云硬盘数据恢复一致性的自动化测试方法,包括以下步骤:
步骤1)获取备份时云主机的开机和关机状态;
步骤2)对云主机A处于关机状态数据盘恢复一致性进行校验,将原云主机A的各个数据盘依次与恢复后的云主机A’的各个数据盘,通过获取sha256值进行校验;
步骤3)对云主机A处于关机状态系统盘恢复一致性进行校验,在云主机系统盘已恢复完毕且自动开机之前,对其系统盘做快照,并通过快照生成新的云硬盘,将此新云硬盘与原云主机A的系统盘,通过获取sha256值进行校验;
步骤4)对云主机A处于开机状态数据盘恢复一致性进行校验,原云主机处于开机状态,云硬盘数据是不断发生变化,并且备份时会对原云主机A各个云硬盘做快照,并备份根据快照生成的临时云硬盘,利用备份时由数据盘生成的临时云硬盘依次与恢复的后云主机A’的数据盘,通过获取sha256值进行校验;
步骤5)对云主机A处于开机状态系统盘恢复一致性进行校验,使用备份时由系统盘产生的临时云硬盘,与恢复后且机器开机之前由系统盘生成新的云硬盘,通过获取sha256值进行校验。
优选地,所述的步骤1)具体为:
Python调用OpenStack接口中的get_power_state(self,vmId)函数来获取备份时云主机的开机和关机状态。
优选地,所述的步骤2)对云主机A处于关机状态数据盘恢复一致性进行校验具体为:
(201)备份虚拟机记为A,处于关机状态且备份恢复过程中无数据变化,使用Python语言,对原云主机的每个数据盘,依次获取sha256值,并写入list列表B;
(202)恢复虚拟机记为A’,对恢复后的数据盘,依次获取sha256值,并写入list列表B’;
(203)依次比较两个list列表B和B’记录的云硬盘sha256信息,若校验成功,则恢复后的云主机数据盘数据与备份时的云主机数据盘数据一致,若校验失败,则云主机数据盘数据恢复不一致且返回校验失败的云硬盘信息。
优选地,所述的步骤3)对云主机A处于关机状态系统盘恢复一致性进行校验具体为:
(301)备份虚拟机记为A,处于关机状态且备份恢复过程中无数据变化,使用Python语言,获取原云主机的系统盘sha256值,并写入list列表B;
(302)云主机备份完成之后,进行云主机恢复,在恢复系统盘时查询正在恢复的系统盘状态,若从“restoring-backup”转变为“available”状态,则对恢复的系统盘做快照,并根据快照生成新的云硬盘,获取该云硬盘的sha256值,并写入list列表B’;
(303)依次比较两个list列表B和B’记录的云硬盘sha256信息,若校验成功,则恢复的云主机系统盘数据与备份时的云主机系统盘数据一致,若校验失败,则云主机系统盘数据恢复不一致且返回校验失败的云硬盘信息。
优选地,所述的查询正在恢复的系统盘状态通过调用get_disk_status()函数来实现。
优选地,所述的步骤4)对云主机A处于开机状态数据盘恢复一致性进行校验具体为:
(401)备份云主机记为A,开机状态下的云主机数据盘不断发生变化,在备份云主机数据盘时会依次备份由原云硬盘快照生成的临时云硬盘,所以依次获取由数据盘生成的临时云硬盘的sha256值,并写入list列表B;
(402)恢复虚拟机记为A’,对恢复后的数据盘,依次获取sha256值,并写入list列表B’;
(403)依次比较两个list列表B和B’记录的云硬盘sha256信息,若校验成功,则恢复的云主机数据盘数据与备份时的云主机数据盘数据一致,若校验失败,则云主机数据盘数据恢复不一致且返回校验失败的云硬盘信息。
优选地,所述的步骤5)对云主机A处于开机状态系统盘恢复一致性进行校验具体为:
(501)备份云主机记为A,开机状态下的云主机系统盘不断发生变化,在备份云主机系统盘时会备份由原系统盘的快照生成的临时云硬盘,所以获取该临时云硬盘的sha256值,并写入list列表B;
(502)云主机备份完成之后,进行云主机恢复,在恢复系统盘时查询正在恢复的系统盘状态,若从“restoring-backup”转变为“available”状态,则对恢复的系统盘做快照,并根据快照生成新的云硬盘,获取该云硬盘的sha256值,写入list列表B’;
(503)依次比较两个list列表B和B’记录的云硬盘sha256信息,若校验成功,则恢复的云主机系统盘数据与备份时的云主机系统盘数据一致,若校验失败,则云主机系统盘数据恢复不一致且返回校验失败的云硬盘信息。
优选地,所述的方法和自动化框架RF结合,能达到全自动化比较的效果,具体为:
把步骤2)、3)、4)、5)中实现的函数放在同一个类中,然后把这个类当做Library加载到Robot Framework自动化测试工具中,然后通过调用步骤2)、3)、4)、5)中方法,得到返回值,然后使用FR自带的关键字should mach来比较两个返回值,若匹配,则用例执行成功,表明结果一致;若不匹配,则用例执行失败,表明结果不一致。
与现有技术相比,本发明提供的OpenStack平台LVM存储下云硬盘数据恢复一致性校验方法,适用于OpenStack云平台中云硬盘数据恢复的校验,使得在这个环境下云硬盘数据恢复一致性校验变得简单,节省人力和时间,并且可以规避人为造成的错误。
附图说明
图1为比较云主机A处于关机状态下数据盘数据恢复是否一致的流程图;
图2为比较云主机A处于关机状态下系统盘数据恢复是否一致的流程图;
图3为比较云主机A处于开机状态下数据盘数据恢复是否一致的流程图;
图4为比较云主机A处于开机状态下系统盘数据恢复是否一致的流程图;
图5为自动化测试架构图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明的一部分实施例,而不是全部实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都应属于本发明保护的范围。
本测试发明分以下几部分介绍:
1、测试思路
OpenStack云硬盘数据恢复一致性校验,就是校验恢复后的云硬盘数据是否和备份时的云硬盘一致,以证明备份恢复过程中无数据丢失的现象。在LVM存储下可以通过云硬盘的挂载路径以及云硬盘的UUID信息可以找到需要被校验的云硬盘。因为云主机的系统盘和数据盘的校验方式不同,所以校验云硬盘的场景可划分为4种a)云主机关机状态下数据盘恢复一致性校验;b)云主机关机状态下系统盘恢复一致性校验;c)云主机开机状态下数据盘恢复一致性校验;d)云主机开机状态下系统盘恢复一致性校验。云主机关机状态场景下备份恢复过程中无数据变化,开机状态场景下备份恢复过程中存在数据变化。
2、具体实现
(1)Python调用OpenStack接口中的get_power_state(self,vmId)方法获取备份时云主机的开/关机状态;
(2)若云主机A处于关机状态校验数据盘,因为在备份恢复过程中其云硬盘是无数据变化的,故将原云主机A的各个数据盘依次与恢复后的云主机A’的各个数据盘,通过获取sha256值进行校验,具体方法见2.1;
(3)若云主机A处于关机状态校验系统盘,云主机系统盘在恢复成功后,如果云主机已经自动开机,那么系统盘的数据则会变化,为了避免云主机开机引起的系统盘数据变化,导致校验结果不一致,故在云主机开机之前,对其系统盘做快照,并通过快照生成新的云硬盘,将此新云硬盘与原云主机A的系统盘,通过获取sha256值进行校验,具体方法见2.2;
(4)若云主机A处于开机状态校验数据盘,因为原云主机处于开机状态,云硬盘数据是不断发生变化,并且备份时会对原云主机A各个云硬盘做快照,并备份根据快照生成的临时云硬盘,那么可以使用由数据盘生成的临时云硬盘依次与恢复的后云主机A’的数据盘,通过获取sha256值进行校验,具体方法见2.3;
(5)若云主机A处于开机状态校验系统盘,使用备份时由系统盘产生的临时云硬盘与恢复后且机器开机之前,由系统盘生成新的云硬盘,通过获取sha256值进行校验,具体方法见2.4。
2.1、如图1所示,比较云主机A处于关机状态下数据盘数据恢复是否一致,具体实现如下:
(1)备份虚拟机记为A,处于关机状态且备份恢复过程中无数据变化,使用Python语言,对原云主机的每个数据盘,依次获取sha256值,并写入list列表B;
(2)恢复虚拟机记为A’,对恢复后的数据盘,依次获取sha256值,并写入list列表B’;
(3)依次比较两个list列表B和B’记录的云硬盘sha256信息,若校验成功,则恢复后的云主机数据盘数据与备份时的云主机数据盘数据一致,若校验失败,则云主机数据盘数据恢复不一致且返回校验失败的云硬盘信息。
2.2、如图2所示,比较云主机A处于关机状态下系统盘数据恢复是否一致,具体实现如下:
(1)备份虚拟机记为A,处于关机状态且备份恢复过程中无数据变化,使用Python语言,获取原云主机的系统盘sha256值,并写入list列表B;
(2)云主机备份完成之后,进行云主机恢复,在恢复系统盘时调用接口使用get_disk_status()方法查询正在恢复的系统盘状态,若从“restoring-backup”转变为“available”状态,则对恢复的系统盘做快照,并根据快照生成新的云硬盘,获取该云硬盘的sha256值,并写入list列表B’;
(3)依次比较两个list列表B和B’记录的云硬盘sha256信息,若校验成功,则恢复的云主机系统盘数据与备份时的云主机系统盘数据一致,若校验失败,则云主机系统盘数据恢复不一致且返回校验失败的云硬盘信息。
2.3、如图3所示,比较云主机A处于开机状态下数据盘数据恢复是否一致,具体实现如下:
(1)备份云主机记为A,开机状态下的云主机数据盘不断发生变化,在备份云主机数据盘时会依次备份由原云硬盘快照生成的临时云硬盘,所以依次获取由数据盘生成的临时云硬盘的sha256值,并写入list列表B。
(2)恢复虚拟机记为A’,对恢复后的数据盘,依次获取sha256值,并写入list列表B’;
(3)依次比较两个list列表B和B’记录的云硬盘sha256信息,若校验成功,则恢复的云主机数据盘数据与备份时的云主机数据盘数据一致,若校验失败,则云主机数据盘数据恢复不一致且返回校验失败的云硬盘信息。
2.4,如图4所示,比较云主机A处于开机状态下系统盘数据恢复是否一致,具体实现如下:
(1)备份云主机记为A,开机状态下的云主机系统盘不断发生变化,在备份云主机系统盘时会备份由原系统盘的快照生成的临时云硬盘,所以获取该临时云硬盘的sha256值,并写入list列表B
(2)云主机备份完成之后,进行云主机恢复,在恢复系统盘时调用接口使用get_disk_status()方法查询正在恢复的系统盘状态,若从“restoring-backup”转变为“available”状态,则对恢复的系统盘做快照,并根据快照生成新的云硬盘,获取该云硬盘的sha256值,写入list列表B’;
(3)根依次比较两个list列表B和B’记录的云硬盘sha256信息,若校验成功,则恢复的云主机系统盘数据与备份时的云主机系统盘数据一致,若校验失败,则云主机系统盘数据恢复不一致且返回校验失败的云硬盘信息。
2.5、以上方法和自动化框架RF结合,能达到全自动化比较的效果。具体实现如下:
RF是一个开源的、基于Python实现的通用自动化测试框架。RF可以导入第三方库,也可以导入自定义的Python程序中的类,把2.1、2.2、2.3、2.4中实现的函数放在同一个类中,然后把这个类当做Library加载到Robot Framework自动化测试工具中,然后通过调用2.1、2.2、2.3、2.4中方法,得到返回值,然后使用FR自带的关键字should mach来比较两个返回值,若匹配,则用例执行成功,表明结果一致;若不匹配,则用例执行失败,表明结果不一致。这样能够很方便的进行云硬盘数据恢复校验,只需要把要校验的云主机信息以及OpenStack登陆信息填入到已写好的自动化用例中,执行自动化用例,即可达到云硬盘数据恢复一致性校验的目的。
具体实施例:
本发明的实现方法采用Python实现,因此比较对象所在的计算机上需要有Python的运行环境。具体实现如下:
(1)对于Windows环境,需要安装Python以及第三方Python库paramiko;
(2)在该Windows环境中部署RF自动化测试工具;
(3)使用Python语言,调用OpenStack接口写一个程序compare.py实现如下功能:调用get_power_state(self,vmId)函数判断云主机备份时的状态;调用searching_backupdisks()检测备份时云硬盘状态并获取临时云硬盘信息;调用searching_restoringdisks()函数,实现获取恢复状态中的系统盘信息;调用GetAllDisksFromVmId(self,vmId)函数,可以通过云主机UUID获取其下的所有云硬盘信息;调用GetDataDisksFromName(self,name)函数,通过云主机名称获取其下所有数据盘信息;
(4)运行RF自动化工具,加载Python实现的compare.py文件,编写自动化用例,在自动化用例中准备好备份恢复执行步骤,和备份云主机A的UUID信息以及远程登录到OpenStack主机后台的登陆信息。在compare.py程序中可以使用paramiko.SSHClient()方式远程登录到OpenStack主机后台,执行sha256sum命令获取云硬盘的sha256值;
(5)在LVM存储下,获取某云硬盘的UUID为A的sha256值可以执行命令“sha256sum/dev/mapper/cinder--volumes-volume--A”;
(6)根据云主机A的UUID信息,调用get_power_state(self,vmId)方法判断云主机备份时的状态;
(7)对云主机A的执行备份;
(8)若云主机A处于开机状态,在云主机A备份的时候,调用searching_backupdisks()函数,检测云硬盘状态,并获取所有临时云硬盘信息,随后计算云硬盘sha256值,并写入list列表B中,为后面校验做准备。若云主机A处于关机状态,调用GetAllDisksFromVmId(self,vmId)函数可以获取到原云主机A下的所有云硬盘信息,然后计算所有云硬盘的sha256值存放于列表ListB中。
(9)云主机A备份完成,对云主机A执行恢复;
(10)在云主机A恢复的时候,调用searching_restoringdisks()函数,在恢复系统盘运行过程中,检测云硬盘的状态为“available”,随后对系统盘做快照且生成新的云硬盘,计算新的云硬盘的sha256值存放于列表ListB’中,然后待恢复完成后,通过恢复的云主机名称调用GetDataDisksFromName(self,name)函数,获取到已经恢复成功的云主机中的所有数据盘,计算所有数据盘的sha256值,并使用append()函数依次其添加到列表ListB’中,更新后的列表ListB’中有包含系统盘和所有数据盘的sha256值信息。
(11)将获取到的备份ListB和恢复ListB’中云硬盘的sha256值,依次使用FR自带的关键字should mach来比较。若用例运行通过,则证明备份前和恢复后云主机云硬盘数据一致;若用例运行失败,则证明不一致。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到各种等效的修改或替换,这些修改或替换都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以权利要求的保护范围为准。
Claims (8)
1.一种云硬盘数据恢复一致性的自动化测试方法,其特征在于,包括以下步骤:
步骤1)获取备份时云主机的开机和关机状态;
步骤2)对云主机A处于关机状态数据盘恢复一致性进行校验,将原云主机A的各个数据盘依次与恢复后的云主机A’的各个数据盘,通过获取sha256值进行校验;
步骤3)对云主机A处于关机状态系统盘恢复一致性进行校验,在云主机系统盘已恢复完毕且自动开机之前,对其系统盘做快照,并通过快照生成新的云硬盘,将此新云硬盘与原云主机A的系统盘,通过获取sha256值进行校验;
步骤4)对云主机A处于开机状态数据盘恢复一致性进行校验,原云主机处于开机状态,云硬盘数据是不断发生变化,并且备份时会对原云主机A各个云硬盘做快照,并备份根据快照生成的临时云硬盘,利用备份时由数据盘生成的临时云硬盘依次与恢复的后云主机A’的数据盘,通过获取sha256值进行校验;
步骤5)对云主机A处于开机状态系统盘恢复一致性进行校验,使用备份时由系统盘产生的临时云硬盘,与恢复后且机器开机之前由系统盘生成新的云硬盘,通过获取sha256值进行校验。
2.根据权利要求1所述的方法,其特征在于,所述的步骤1)具体为:
Python调用OpenStack接口中的get_power_state(self,vmId)函数来获取备份时云主机的开机和关机状态。
3.根据权利要求1所述的方法,其特征在于,所述的步骤2)对云主机A处于关机状态数据盘恢复一致性进行校验具体为:
(201)备份虚拟机记为A,处于关机状态且备份恢复过程中无数据变化,使用Python语言,对原云主机的每个数据盘,依次获取sha256值,并写入list列表B;
(202)恢复虚拟机记为A’,对恢复后的数据盘,依次获取sha256值,并写入list列表B’;
(203)依次比较两个list列表B和B’记录的云硬盘sha256信息,若校验成功,则恢复后的云主机数据盘数据与备份时的云主机数据盘数据一致,若校验失败,则云主机数据盘数据恢复不一致且返回校验失败的云硬盘信息。
4.根据权利要求1所述的方法,其特征在于,所述的步骤3)对云主机A处于关机状态系统盘恢复一致性进行校验具体为:
(301)备份虚拟机记为A,处于关机状态且备份恢复过程中无数据变化,使用Python语言,获取原云主机的系统盘sha256值,并写入list列表B;
(302)云主机备份完成之后,进行云主机恢复,在恢复系统盘时查询正在恢复的系统盘状态,若从“restoring-backup”转变为“available”状态,则对恢复的系统盘做快照,并根据快照生成新的云硬盘,获取该云硬盘的sha256值,并写入list列表B’;
(303)依次比较两个list列表B和B’记录的云硬盘sha256信息,若校验成功,则恢复的云主机系统盘数据与备份时的云主机系统盘数据一致,若校验失败,则云主机系统盘数据恢复不一致且返回校验失败的云硬盘信息。
5.根据权利要求4所述的方法,其特征在于,所述的查询正在恢复的系统盘状态通过调用get_disk_status()函数来实现。
6.根据权利要求1所述的方法,其特征在于,所述的步骤4)对云主机A处于开机状态数据盘恢复一致性进行校验具体为:
(401)备份云主机记为A,开机状态下的云主机数据盘不断发生变化,在备份云主机数据盘时会依次备份由原云硬盘快照生成的临时云硬盘,所以依次获取由数据盘生成的临时云硬盘的sha256值,并写入list列表B;
(402)恢复虚拟机记为A’,对恢复后的数据盘,依次获取sha256值,并写入list列表B’;
(403)依次比较两个list列表B和B’记录的云硬盘sha256信息,若校验成功,则恢复的云主机数据盘数据与备份时的云主机数据盘数据一致,若校验失败,则云主机数据盘数据恢复不一致且返回校验失败的云硬盘信息。
7.根据权利要求1所述的方法,其特征在于,所述的步骤5)对云主机A处于开机状态系统盘恢复一致性进行校验具体为:
(501)备份云主机记为A,开机状态下的云主机系统盘不断发生变化,在备份云主机系统盘时会备份由原系统盘的快照生成的临时云硬盘,所以获取该临时云硬盘的sha256值,并写入list列表B;
(502)云主机备份完成之后,进行云主机恢复,在恢复系统盘时查询正在恢复的系统盘状态,若从“restoring-backup”转变为“available”状态,则对恢复的系统盘做快照,并根据快照生成新的云硬盘,获取该云硬盘的sha256值,写入list列表B’;
(503)依次比较两个list列表B和B’记录的云硬盘sha256信息,若校验成功,则恢复的云主机系统盘数据与备份时的云主机系统盘数据一致,若校验失败,则云主机系统盘数据恢复不一致且返回校验失败的云硬盘信息。
8.根据权利要求1所述的方法,其特征在于,所述的方法和自动化框架RF结合,能达到全自动化比较的效果,具体为:
把步骤2)、3)、4)、5)中实现的函数放在同一个类中,然后把这个类当做Library加载到Robot Framework自动化测试工具中,然后通过调用步骤2)、3)、4)、5)中方法,得到返回值,然后使用FR自带的关键字should mach来比较两个返回值,若匹配,则用例执行成功,表明结果一致;若不匹配,则用例执行失败,表明结果不一致。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201711084616.1A CN107818029B (zh) | 2017-11-07 | 2017-11-07 | 一种云硬盘数据恢复一致性的自动化测试方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201711084616.1A CN107818029B (zh) | 2017-11-07 | 2017-11-07 | 一种云硬盘数据恢复一致性的自动化测试方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN107818029A true CN107818029A (zh) | 2018-03-20 |
CN107818029B CN107818029B (zh) | 2020-06-16 |
Family
ID=61603811
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201711084616.1A Active CN107818029B (zh) | 2017-11-07 | 2017-11-07 | 一种云硬盘数据恢复一致性的自动化测试方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN107818029B (zh) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109032838A (zh) * | 2018-06-28 | 2018-12-18 | 上海爱数信息技术股份有限公司 | 虚拟机备份恢复数据一致性的自动校验方法 |
CN111538613A (zh) * | 2020-04-28 | 2020-08-14 | 浙江大华技术股份有限公司 | 一种集群系统异常恢复处理方法及装置 |
CN111625396A (zh) * | 2019-02-27 | 2020-09-04 | 阿里巴巴集团控股有限公司 | 备份数据的校验方法、服务器及存储介质 |
CN112035296A (zh) * | 2020-08-28 | 2020-12-04 | 浪潮云信息技术股份公司 | 一种增量备份最小变动的备份方法 |
CN112463644A (zh) * | 2020-12-17 | 2021-03-09 | 深圳软牛科技有限公司 | 数据恢复软件的回归测试方法、装置、设备及存储介质 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102521071A (zh) * | 2011-11-24 | 2012-06-27 | 广州杰赛科技股份有限公司 | 一种基于私有云的虚拟机维护方法 |
US8402309B2 (en) * | 2009-10-12 | 2013-03-19 | Vecam Software International Ltd. | Item-level restoration and verification of image level backups |
CN103473065A (zh) * | 2013-09-18 | 2013-12-25 | 国云科技股份有限公司 | 一种可快速还原系统盘的虚拟机创建方法 |
US20140095816A1 (en) * | 2012-09-28 | 2014-04-03 | Windsor W. Hsu | System and method for full virtual machine backup using storage system functionality |
CN103729264A (zh) * | 2013-12-23 | 2014-04-16 | 国云科技股份有限公司 | 一种Windows虚拟机系统盘备份还原方法 |
CN106951345A (zh) * | 2017-03-28 | 2017-07-14 | 上海爱数信息技术股份有限公司 | 一种虚拟机磁盘数据的一致性测试方法及装置 |
-
2017
- 2017-11-07 CN CN201711084616.1A patent/CN107818029B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8402309B2 (en) * | 2009-10-12 | 2013-03-19 | Vecam Software International Ltd. | Item-level restoration and verification of image level backups |
CN102521071A (zh) * | 2011-11-24 | 2012-06-27 | 广州杰赛科技股份有限公司 | 一种基于私有云的虚拟机维护方法 |
US20140095816A1 (en) * | 2012-09-28 | 2014-04-03 | Windsor W. Hsu | System and method for full virtual machine backup using storage system functionality |
CN103473065A (zh) * | 2013-09-18 | 2013-12-25 | 国云科技股份有限公司 | 一种可快速还原系统盘的虚拟机创建方法 |
CN103729264A (zh) * | 2013-12-23 | 2014-04-16 | 国云科技股份有限公司 | 一种Windows虚拟机系统盘备份还原方法 |
CN106951345A (zh) * | 2017-03-28 | 2017-07-14 | 上海爱数信息技术股份有限公司 | 一种虚拟机磁盘数据的一致性测试方法及装置 |
Non-Patent Citations (1)
Title |
---|
汪超: "虚拟化云计算的应用设计与实现", 《中国优秀硕士学位论文全文数据库 信息科技辑》 * |
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109032838A (zh) * | 2018-06-28 | 2018-12-18 | 上海爱数信息技术股份有限公司 | 虚拟机备份恢复数据一致性的自动校验方法 |
CN109032838B (zh) * | 2018-06-28 | 2022-07-15 | 上海爱数信息技术股份有限公司 | 虚拟机备份恢复数据一致性的自动校验方法 |
CN111625396A (zh) * | 2019-02-27 | 2020-09-04 | 阿里巴巴集团控股有限公司 | 备份数据的校验方法、服务器及存储介质 |
CN111625396B (zh) * | 2019-02-27 | 2023-05-26 | 阿里云计算有限公司 | 备份数据的校验方法、服务器及存储介质 |
CN111538613A (zh) * | 2020-04-28 | 2020-08-14 | 浙江大华技术股份有限公司 | 一种集群系统异常恢复处理方法及装置 |
CN111538613B (zh) * | 2020-04-28 | 2023-06-13 | 浙江大华技术股份有限公司 | 一种集群系统异常恢复处理方法及装置 |
CN112035296A (zh) * | 2020-08-28 | 2020-12-04 | 浪潮云信息技术股份公司 | 一种增量备份最小变动的备份方法 |
CN112463644A (zh) * | 2020-12-17 | 2021-03-09 | 深圳软牛科技有限公司 | 数据恢复软件的回归测试方法、装置、设备及存储介质 |
CN112463644B (zh) * | 2020-12-17 | 2024-05-17 | 深圳软牛科技有限公司 | 数据恢复软件的回归测试方法、装置、设备及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN107818029B (zh) | 2020-06-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107818029A (zh) | 一种云硬盘数据恢复一致性的自动化测试方法 | |
US9710367B1 (en) | Method and system for dynamic test case creation and documentation to the test repository through automation | |
CN104407938B (zh) | 一种虚拟机镜像级备份后的多种粒度恢复方法 | |
US9348827B1 (en) | File-based snapshots for block-based backups | |
US8892941B2 (en) | Recovering a volume table and data sets from a corrupted volume | |
CN106951345A (zh) | 一种虚拟机磁盘数据的一致性测试方法及装置 | |
CN106874066B (zh) | 一种虚拟机迁移方法及装置、电子设备 | |
CN110008129B (zh) | 一种存储定时快照的可靠性测试方法、装置及设备 | |
CN110737594B (zh) | 自动生成测试用例的数据库标准符合性测试方法及装置 | |
CN102999419B (zh) | 一种Android测试事件记录回放方法及装置 | |
CN110109777A (zh) | 一种实现cbt数据损坏情况下的vm持续增量备份方法 | |
CN106126427A (zh) | 一种快速恢复测试的方法及系统 | |
CN111309527A (zh) | 一种在虚拟化备份系统中保留和恢复用户快照的方法 | |
CN108287786A (zh) | 一种基于地图的自动化测试方法和装置、及混合导航系统 | |
CN105868127A (zh) | 一种数据存储、读取方法及装置 | |
WO2016165461A1 (zh) | 一种电信网网管系统软件自动化测试方法和装置 | |
CN104978241B (zh) | 一种cow类型文件系统的数据恢复方法及装置 | |
CN107885527A (zh) | 一种测试系统的代码修改方法及装置 | |
CN106909484B (zh) | 一种用于存储环境下模拟坏盘测试的系统及方法 | |
CN106611138B (zh) | 一种ghost文件保密检查方法及装置 | |
US8949560B1 (en) | Validating an ability to roll back data to an earlier point in time for data associated with a virtual store | |
CN107491363A (zh) | 一种基于Linux内核的存储卷的快照方法及装置 | |
CN110806981B (zh) | 一种应用程序测试方法、装置、设备和存储介质 | |
US7743244B2 (en) | Computer system model generation with tracking of actual computer system configuration | |
CN112732489A (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 | ||
PE01 | Entry into force of the registration of the contract for pledge of patent right | ||
PE01 | Entry into force of the registration of the contract for pledge of patent right |
Denomination of invention: An automated testing method for consistency of cloud hard disk data recovery Effective date of registration: 20231115 Granted publication date: 20200616 Pledgee: Bank of Shanghai Limited by Share Ltd. Pudong branch Pledgor: SHANGHAI EISOO INFORMATION TECHNOLOGY Co.,Ltd. Registration number: Y2023310000743 |