CN107818029B - 一种云硬盘数据恢复一致性的自动化测试方法 - Google Patents

一种云硬盘数据恢复一致性的自动化测试方法 Download PDF

Info

Publication number
CN107818029B
CN107818029B CN201711084616.1A CN201711084616A CN107818029B CN 107818029 B CN107818029 B CN 107818029B CN 201711084616 A CN201711084616 A CN 201711084616A CN 107818029 B CN107818029 B CN 107818029B
Authority
CN
China
Prior art keywords
disk
cloud
cloud host
data
hard disk
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
Application number
CN201711084616.1A
Other languages
English (en)
Other versions
CN107818029A (zh
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.)
Shanghai Eisoo Information Technology Co Ltd
Original Assignee
Shanghai Eisoo Information Technology 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 Shanghai Eisoo Information Technology Co Ltd filed Critical Shanghai Eisoo Information Technology Co Ltd
Priority to CN201711084616.1A priority Critical patent/CN107818029B/zh
Publication of CN107818029A publication Critical patent/CN107818029A/zh
Application granted granted Critical
Publication of CN107818029B publication Critical patent/CN107818029B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1446Point-in-time backing up or restoration of persistent data
    • G06F11/1458Management of the backup or restore process
    • G06F11/1464Management of the backup or restore process for networked environments
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1446Point-in-time backing up or restoration of persistent data
    • G06F11/1458Management of the backup or restore process
    • G06F11/1469Backup restoration techniques
    • 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/3684Test management for test design, e.g. generating new test cases
    • 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

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 match来比较两个返回值,若匹配,则用例执行成功,表明结果一致;若不匹配,则用例执行失败,表明结果不一致。
与现有技术相比,本发明提供的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 match来比较两个返回值,若匹配,则用例执行成功,表明结果一致;若不匹配,则用例执行失败,表明结果不一致。这样能够很方便的进行云硬盘数据恢复校验,只需要把要校验的云主机信息以及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 match来比较。若用例运行通过,则证明备份前和恢复后云主机云硬盘数据一致;若用例运行失败,则证明不一致。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到各种等效的修改或替换,这些修改或替换都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以权利要求的保护范围为准。

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)中方法,得到返回值,然后使用Robot Framework自带的关键字should match来比较两个返回值,若匹配,则用例执行成功,表明结果一致;若不匹配,则用例执行失败,表明结果不一致。
CN201711084616.1A 2017-11-07 2017-11-07 一种云硬盘数据恢复一致性的自动化测试方法 Active CN107818029B (zh)

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 CN107818029A (zh) 2018-03-20
CN107818029B true 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)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109032838B (zh) * 2018-06-28 2022-07-15 上海爱数信息技术股份有限公司 虚拟机备份恢复数据一致性的自动校验方法
CN111625396B (zh) * 2019-02-27 2023-05-26 阿里云计算有限公司 备份数据的校验方法、服务器及存储介质
CN111538613B (zh) * 2020-04-28 2023-06-13 浙江大华技术股份有限公司 一种集群系统异常恢复处理方法及装置
CN112035296A (zh) * 2020-08-28 2020-12-04 浪潮云信息技术股份公司 一种增量备份最小变动的备份方法
CN112463644A (zh) * 2020-12-17 2021-03-09 深圳软牛科技有限公司 数据恢复软件的回归测试方法、装置、设备及存储介质

Citations (5)

* Cited by examiner, † Cited by third party
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 国云科技股份有限公司 一种可快速还原系统盘的虚拟机创建方法
CN103729264A (zh) * 2013-12-23 2014-04-16 国云科技股份有限公司 一种Windows虚拟机系统盘备份还原方法
CN106951345A (zh) * 2017-03-28 2017-07-14 上海爱数信息技术股份有限公司 一种虚拟机磁盘数据的一致性测试方法及装置

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9110604B2 (en) * 2012-09-28 2015-08-18 Emc Corporation System and method for full virtual machine backup using storage system functionality

Patent Citations (5)

* Cited by examiner, † Cited by third party
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 广州杰赛科技股份有限公司 一种基于私有云的虚拟机维护方法
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)

* Cited by examiner, † Cited by third party
Title
虚拟化云计算的应用设计与实现;汪超;《中国优秀硕士学位论文全文数据库 信息科技辑》;20170215;I137-4 *

Also Published As

Publication number Publication date
CN107818029A (zh) 2018-03-20

Similar Documents

Publication Publication Date Title
CN107818029B (zh) 一种云硬盘数据恢复一致性的自动化测试方法
CN106951345B (zh) 一种虚拟机磁盘数据的一致性测试方法及装置
US9910735B1 (en) Generating an application-consistent snapshot
US7386752B1 (en) Using asset dependencies to identify the recovery set and optionally automate and/or optimize the recovery
CN102736978B (zh) 一种检测应用程序的安装状态的方法及装置
CN105843741B (zh) 应用程序的信息处理方法和装置
CN109032838B (zh) 虚拟机备份恢复数据一致性的自动校验方法
US20150193336A1 (en) Computing device and method for recording system event logs of computing device
CN111580929A (zh) 一种基于虚拟机保护数据的有效性验证系统及方法
US20120311279A1 (en) Data recovery and backup system and process
CN107368313B (zh) 代码检测方法、装置及电子设备
CN110008129B (zh) 一种存储定时快照的可靠性测试方法、装置及设备
CN104216743A (zh) 可配置的虚拟机启动完整性维护的方法及系统
CN110209525B (zh) 操作系统还原方法及装置
CN105786545B (zh) 基于异构混合内存的断点恢复方法和系统
US11188449B2 (en) Automated exception resolution during a software development session based on previous exception encounters
WO2018049798A1 (zh) 一种缓存分区重构的方法和装置
US11150831B2 (en) Virtual machine synchronization and recovery
CN108241543B (zh) 业务操作断点执行的方法、业务服务器及系统
CN111694724B (zh) 分布式表格系统的测试方法、装置、电子设备及存储介质
CN110727597B (zh) 一种基于日志排查无效代码补全用例的方法
KR101393034B1 (ko) 시스템 복원 장치 및 방법
US10108537B2 (en) Mechanisms for reproducing storage system metadata inconsistencies in a test environment
CN111666200A (zh) 一种pc软件冷启动耗时的测试方法及终端
US20160004607A1 (en) Information processing apparatus and information processing method

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

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

PE01 Entry into force of the registration of the contract for pledge of patent right