robotframework-demo/Project/task4/Resource/RE3_DPM/KeyWord_H3C.robot

345 lines
19 KiB
Plaintext
Raw Normal View History

2023-12-14 03:19:52 +00:00
*** Settings ***
Resource ElementPath.robot
Library SSHLibrary
Resource ../RE0_Common/KeyWord.robot
*** Keywords ***
H3C备份
[Arguments] ${agent} ${bk_type} ${mds_name} ${encryption_attr} ${compress_attr} ${dedup_attr} ${cache} ${cache_path} ${cache_ip} ${cache_name} ${cache_pwd} ${H3C_backup_name}
元素点击 ${Timed_DataProtect} 点击进入定时数据保护页面 定位定时数据保护失败
${date} Evaluate time.strftime('%Y%m%d%H%M%S',time.localtime()) time
${random_strategyName}= Catenate SEPARATOR=_ ${bk_type} ${date}
${createpolicy} Catenate SEPARATOR= 新建了策略[ ${random_strategyName} ]
Set Suite Variable ${random_strategyName}
Set Suite Variable ${createpolicy}
Sleep 5s
元素点击 xpath=//span[text()="${agent}"] 点击选择代理 定位代理所在位置失败
元素点击 ${dpm_Protection strategy} 点击进入保护策略页面 定位保护策略按钮失败
H3C策略清理
元素点击 ${Add_H3C_Policy} 点击添加策略按钮 定位添加策略按钮失败
元素输入 ${Set_PolicyName} ${random_strategyName} 定位策略名输入框失败
元素点击 ${H3C_Virtual} 点击选择虚拟机选项 定位虚拟机选项失败
sleep 5s
元素输入 ${Input_SearchVM_H3C} ${H3C_backup_name} 定位虚拟机名称输入框失败
元素点击 ${Button_SearchVM_H3C} 点击搜索选项 定位搜索虚拟机选项失败
元素点击 xpath=//span[text()="${H3C_backup_name}"]/../../td[2] 点击勾选虚拟机 定位虚拟机失败
元素点击 ${Add_Bk_List_FusionSphere} 点击添加到右侧备份虚拟机框 定位添加到已选列表框失败
元素点击 ${Add_VM_NextStep} 点击下一步按钮进入任务周期设置界面 定位任务周期设置失败
元素点击 ${Add_taskcycle} 点击添加任务周期 定位添加任务周期按钮失败
Run Keyword If "${bk_type}"=="完全" 完全备份
... ELSE IF "${bk_type}"=="差量" 差量备份
Sleep 2s
元素点击 ${Cycle_Once} 设置任务仅执行一次 定位仅执行一次失败
元素点击 ${Cycle_Confirm} 确定任务周期设置完毕 定位任务周期设置失败
元素点击 ${Cycle_NextStep} 点击下一步进入备份集存储设置界面 定位下一步失败
元素点击 ${Manual_ChooseMDS} 点击勾选手动选择介质 定位选择介质失败
元素点击 ${Select_MDS_DM} 点击介质选择按钮 定位介质选择按钮失败
元素点击 xpath=//select[@id="dialogues_addCycleStorage_storagePath_selectMedia_selectedMdsIP_select"]/option[@label="${mds_name}"] 点击选择指定介质 定位指定介质失败
元素点击 ${Storage_NextStep} 点击下一步进入到备份高级选项 定位下一步失败
log 进入备份高级选项
Run Keyword If ${encryption_attr}==1 加密
Run Keyword If ${compress_attr}==1 取消压缩
... ELSE IF ${compress_attr}==0 压缩
Run Keyword If ${dedup_attr}==1 重删
Sleep 2s
Run Keyword If ${cache}==1 备份缓存 ${cache_path} ${cache_ip} ${cache_name} ${cache_pwd} ${sharePath}
... ELSE IF ${cache}==0 log 采用有代理模式
元素点击 ${H3C_Complete_CreatePolicy} 点击确定按钮完成策略创建 定位确定按钮失败
元素点击 ${Success_Confirm} 确定策略创建成功 策略创建失败
元素点击 ${BackupSet} 点击进入备份集一栏 定位备份集栏失败
Sleep 60s
Wait Until Page Contains Element xpath=//*[@id="backupSetTable"]//tr[2]/td[text()="已完成"] 300s 备份未完成
Log 备份完成
Sleep 2s
H3C恢复
[Arguments] ${cache} ${cache_path} ${cache_ip} ${cache_name} ${cache_pwd}
循环点击 ${BackupSet} ${Click_recover}
元素点击 ${Click_recover} 点击恢复按钮 定位恢复按钮失败
Sleep 2s
元素点击 ${H3C_Recover_NextStep} 点击下一步进入到恢复高级选项内 定位下一步恢复按钮失败
Run Keyword If ${cache}==1 恢复缓存 ${cache_path} ${cache_ip} ${cache_name} ${cache_pwd}
... ELSE IF ${cache}==0 log 采用有代理模式
元素点击 ${H3C_Recover_Confirm} 点击完成恢复策略创建 定位恢复确定按钮失败
Sleep 5s
元素点击 ${confirm_restore} 点击确定恢复确认按钮成功 点击确定恢复确认按钮失败
Sleep 5s
元素点击 ${Success_Confirm} 恢复策略确定创建成功 恢复作业创建成功弹窗定位失败
元素点击 ${Policy_Work} 点击进入作业栏 定位作业栏失败
Sleep 60s
Wait Until Page Contains Element ${Recover_Success} 300s 恢复失败
sleep 2s
Log 恢复成功
完全备份
Sleep 2s
Click Element ${Full_Backup}
Log 勾选完全备份
差量备份
Sleep 2s
Click Element ${Divergence_Backup}
Log 勾选差量备份
加密
Sleep 2s
元素点击 ${H3C_Encryption} 勾选加密 定位选项选项失败
Sleep 2s
压缩
Log 点击压缩
重删
Sleep 2s
元素点击 ${Option_Dedup} 勾选重删 定位重删选项失败
Log 点击重删
Sleep 2s
备份缓存
[Arguments] ${path} ${agent_ip} ${agent_user} ${agent_pwd} ${sharePath}
循环点击 ${Active_Cache} ${Cache_Path}
元素输入 ${Cache_Path} ${path} 定位缓存路径输入框失败
元素输入 ${Cache_Agent_IP} ${agent_ip} 定位缓存代理ip输入框失败
元素输入 ${Cache_Agent_Name} ${agent_user} 定位缓存代理用户名输入框失败
元素输入 ${Cache_Agent_PWD} ${agent_pwd} 定位缓存代理用户密码输入框失败
元素输入 ${H3C_Recover_Cache_sharePath} ${sharePath} 定位缓存代理用户密码输入框失败
元素点击 ${Fin_CachePath} 缓存路径设置完毕 定位缓存路径设置确定按钮失败
恢复缓存
[Arguments] ${path} ${agent_ip} ${agent_user} ${agent_pwd}
元素点击 ${H3C_Recover_Cache} 勾选恢复缓存 定位恢复缓存按钮失败
元素输入 ${H3C_Recover_CachePath} ${path} 定位恢复缓存路径输入框失败
元素输入 ${H3C_Recover_Cache_IP} ${agent_ip} 定位代理ip输入框失败
元素输入 ${H3C_Recover_Cache_Name} ${agent_user} 定位用户名输入框失败
元素输入 ${H3C_Recover_Cache_PWD} ${agent_pwd} 定位密码输入框失败
元素点击 ${H3C_Recover_Cache_Confirm} 点击完成缓存设置 定位缓存设置确定按钮失败
备份集属性校验
[Arguments] ${encryption} ${compress} ${deduped} ${cache}
sleep 10s
循环点击 ${BackupSet} ${BK_Details}
sleep 2s
元素点击 ${BK_Details} 点击进入备份集详情 定位备份集详情失败
Sleep 10s
Run Keyword If ${encryption}==1 加密属性校验
... ELSE Log 属性不校验
Run Keyword If ${compress}==1 压缩属性校验
... ELSE Log 属性不校验
Run Keyword If ${deduped}==1 重删属性校验
... ELSE Log 属性不校验
Run Keyword If ${cache}==1 缓存属性校验
... ELSE Log 属性不校验
元素点击 ${Attr_Cancel} 点击取消关闭备份集详情弹窗 定位取消按钮失败
Log 备份集属性确认完毕
Sleep 2s
加密属性校验
Element Should Contain xpath=//*[@id="dpm_backupset_backUpSetInfo_encryption_state_td"] 是
Log 加密属性校验完毕
压缩属性校验
Element Should Contain ${Compress_Attr} 是
Log 压缩属性校验完毕
重删属性校验
Element Should Contain ${H3C_Deduped_Attr} 是
Log 重删属性校验完毕
缓存属性校验
Element Should Contain ${Cache_Attr} 是
Log 缓存属性校验完毕
策略删除
元素点击 ${DPM_Tab_Policy} 定位策略栏失败 定位策略失败
元素点击 ${Policy_Delete} 点击删除策略 定位策略删除失败
元素点击 ${Confirm_Delete} 确定删除策略 确认删除定位失败
元素点击 ${Success_Confirm} 策略删除成功 定位删除成功按钮失败
Sleep 2s
取消压缩
Log 点击压缩
元素点击 ${Option_Compress} 取消加密 定位选项失败
sleep 2s
H3C差量备份
元素点击 ${dpm_Protection strategy} 选择定时保护策略 定位定时保护策略失败
sleep 5s
元素点击 ${Run_Now} 点击立即执行 定位立即执行失败
元素点击 ${SelectH3C_BackType} 点击选择备份类型 定位选择备份类型失败
元素点击 ${Now Difference_Backup_H3C} 选择差量备份 定位差量备份失败
元素点击 ${Now Sure} 点击立即执行确定 定位立即执行确定失败
元素点击 ${Cl_addOK} 点击确定 定位确定失败
log 开始备份
Sleep 10s
元素点击 ${BackupSet} 选择备份集页面 定位备份集页面失败
Sleep 60s
Comment Wait Until Page Contains Element Xpath=//*[@id="backupSetTable"]/div[2]/table/tbody/tr[2]/td[text()="已完成"] 300s 备份未完成
Log 备份完成
Sleep 2s
FOR ${n} IN RANGE 10
Click Element ${Button_Searchbk}
${bk_status} Run Keyword And Return Status Wait Until Element Is Visible Xpath=//*[@id="backupSetTable"]/div[2]/table/tbody/tr[2]/td[text()="已完成"]
Run Keyword If "${bk_status}"=="True" Exit For Loop
... ELSE Log 备份未完成
Sleep 90s
END
Run Keyword If ${bk_status}==False Fail
... ELSE Log 备份成功
Sleep 30s
H3C差量恢复
[Arguments] ${cache_path} ${cache_ip} ${cache_name} ${cache_pwd}
元素点击 xpath=//*[@id="compileBackupRecId0"] 点击恢复按钮 定位恢复按钮失败
Sleep 2s
元素点击 ${H3C_Recover_NextStep} 点击下一步进入到恢复高级选项内 定位下一步恢复按钮失败
恢复缓存 ${cache_path} ${cache_ip} ${cache_name} ${cache_pwd}
元素点击 ${H3C_Recover_Confirm} 点击完成恢复策略创建 定位恢复确定按钮失败
Sleep 5s
元素点击 ${Success_Confirm} 恢复策略确定创建成功 恢复作业创建成功弹窗定位失败
元素点击 ${Policy_Work} 点击进入作业栏 定位作业栏失败
Sleep 60s
Wait Until Page Contains Element ${Recover_Success} 300s 恢复失败
sleep 2s
Log 恢复成功
元素点击 ${DPM_Tab_Policy} 30s 定位策略失败
Log 切换到策略一栏
Sleep 2s
FOR ${n} IN RANGE 3
${policy_status} Run Keyword And Return Status Wait Until Element Is Visible ${Policy_Delete}
Run Keyword If ${policy_status}==True 策略删除
... ELSE Exit For Loop
END
Log 环境清理完毕
H3C策略清理
Sleep 2s
FOR ${n} IN RANGE 3
${policy_status} Run Keyword And Return Status Wait Until Element Is Visible xpath=//tr[@class=" ev_dhx_web"]
Run Keyword If ${policy_status}==True 策略删除_H3C
... ELSE log 无残留策略
sleep 5s
END
Log 环境清理完毕
策略删除_H3C
循环点击 ${Cycle_H3C_Police_Delete} ${Sanfor_Delete}
元素点击 ${Sanfor_Delete} 点击确认删除成功 定位确认按钮失败
元素点击 ${Delete_succeeded_OK} 点击删除成功 定位删除成功按钮失败
H3C备份_有代理
[Arguments] ${agent} ${bk_type} ${mds_name} ${encryption_attr} ${compress_attr} ${dedup_attr} ${H3C_backup_name}
元素点击 ${Timed_DataProtect} 点击进入定时数据保护页面 定位定时数据保护失败
${date} Evaluate time.strftime('%Y%m%d%H%M%S',time.localtime()) time
${random_strategyName}= Catenate SEPARATOR=_ ${bk_type} ${date}
${createpolicy} Catenate SEPARATOR= 新建了策略[ ${random_strategyName} ]
Set Suite Variable ${random_strategyName}
Set Suite Variable ${createpolicy}
Sleep 5s
元素点击 xpath=//span[text()="${agent}"] 点击选择代理 定位代理所在位置失败
Comment 元素点击 ${BackupSet} 点击进入备份集页面 定位备份集按钮失败
元素点击 ${dpm_Protection strategy} 点击进入保护策略页面 定位保护策略按钮失败
Comment Mouse Out xpath=//span[text()="${agent}"]
H3C策略清理
元素点击 ${Add_H3C_Policy} 点击添加策略按钮 定位添加策略按钮失败
元素输入 ${Set_PolicyName} ${random_strategyName} 定位策略名输入框失败
元素点击 ${H3C_Virtual} 点击选择虚拟机选项 定位虚拟机选项失败
sleep 5s
元素输入 ${Input_SearchVM_H3C} ${H3C_backup_name_agent} 定位虚拟机名称输入框失败
元素点击 ${Button_SearchVM_H3C} 点击搜索选项 定位搜索虚拟机选项失败
元素点击 xpath=//span[text()="${H3C_backup_name_agent}"]/../../td[2] 点击勾选虚拟机 定位虚拟机失败
元素点击 ${Add_Bk_List_FusionSphere} 点击添加到右侧备份虚拟机框 定位添加到已选列表框失败
元素点击 ${Add_VM_NextStep} 点击下一步按钮进入任务周期设置界面 定位任务周期设置失败
元素点击 ${Add_taskcycle} 点击添加任务周期 定位添加任务周期按钮失败
Run Keyword If "${bk_type}"=="完全" 完全备份
... ELSE IF "${bk_type}"=="增量" 差量备份
Sleep 2s
元素点击 ${Cycle_Once} 设置任务仅执行一次 定位仅执行一次失败
元素点击 ${Cycle_Confirm} 确定任务周期设置完毕 定位任务周期设置失败
元素点击 ${H3C_NextStep} 点击下一步进入备份集存储设置界面 定位下一步失败
元素点击 ${Manual_ChooseMDS} 点击勾选手动选择介质 定位选择介质失败
元素点击 ${Select_MDS_DM} 点击介质选择按钮 定位介质选择按钮失败
元素点击 xpath=//select[@id="dialogues_addCycleStorage_storagePath_selectMedia_selectedMdsIP_select"]/option[@label="${mds_name}"] 点击选择指定介质 定位指定介质失败
Run Keyword If ${dedup_attr}==1 重删
元素点击 ${Storage_NextStep} 点击下一步进入到备份高级选项 定位下一步失败
log 进入备份高级选项
Run Keyword If ${encryption_attr}==1 加密
Run Keyword If ${compress_attr}==0 压缩
... ELSE IF ${compress_attr}==1 取消压缩
Sleep 2s
Comment Run Keyword If ${cache}==1 备份缓存 ${cache_path} ${cache_ip} ${cache_name} ${cache_pwd}
... ELSE IF ${cache}==0 log 采用有代理模式
元素点击 ${H3C_Complete_CreatePolicy} 点击确定按钮完成策略创建 定位确定按钮失败
元素点击 ${Success_Confirm} 确定策略创建成功 策略创建失败
元素点击 ${BackupSet} 点击进入备份集一栏 定位备份集栏失败
Sleep 60s
Wait Until Page Contains Element xpath=//*[@id="backupSetTable"]//tr[2]/td[text()="已完成"] 300s 备份未完成
Log 备份完成
Sleep 2s
增量备份
Sleep 2s
Click Element ${Incre_Backup}
Log 勾选增量备份
H3C恢复_有代理
循环点击 ${BackupSet} ${Click_recover}
元素点击 ${Click_recover} 点击恢复按钮 定位恢复按钮失败
Sleep 2s
元素点击 ${H3C_Recover_NextStep} 点击下一步进入到恢复高级选项内 定位下一步恢复按钮失败
元素点击 ${H3C_Recover_Confirm} 点击完成恢复策略创建 定位恢复确定按钮失败
Sleep 5s
元素点击 ${confirm_restore} 点击确定恢复按钮成功 点击确定恢复按钮失败
Sleep 5s
元素点击 ${Success_Confirm} 恢复策略确定创建成功 恢复作业创建成功弹窗定位失败
元素点击 ${Policy_Work} 点击进入作业栏 定位作业栏失败
Sleep 60s
Wait Until Page Contains Element ${Recover_Success} 700s 恢复失败
sleep 2s
Log 恢复成功
元素点击 ${DPM_Tab_Policy} 30s 定位策略失败
Log 切换到策略一栏
Sleep 2s
立即执行_H3C
[Arguments] ${bk_type} #立即备份执行备份类型
元素点击 ${Timed_DataProtect} 点击进入定时数据保护页面 定位定时数据保护失败
元素点击 ${dpm_Protection strategy} 切换到定时保护策略栏 定位定时保护策略功能栏失败
Sleep 2s
元素点击 xpath=//td[text()="${random_strategyName}"]/..//span[text()="立即执行"] 点击策略立即执行 定位立即执行失败
元素点击 ${Exe_H3C_Bk} 点击展开立即执行下拉框 定位立即执行备份类型失败
Run Keyword If "${bk_type}"=="完全" 立即执行_完全备份
... ELSE IF "${bk_type}"=="差量" 立即执行_差量备份
... ELSE IF "${bk_type}"=="增量" 立即执行_增量备份
Sleep 2s
Comment 循环点击 ${ExecutePolicy_execute} ${Complie_confirm}
Comment Sleep 5s
元素点击 ${Complie_confirm_H3C} 点击确定按钮 定位确定按钮失败
元素点击 ${Success_Confirm} 点击添加成功确定按钮 定位添加成功确定按钮失败
元素点击 ${BackupSet} 点击进入备份集一栏 定位备份集栏失败
元素输入 ${Input_Policy_Name} ${random_strategyName} 输入策略名
FOR ${n} IN RANGE 10
Click Element ${Button_Searchbk}
${bk_status} Run Keyword And Return Status Wait Until Element Is Visible Xpath=//*[@id="backupSetTable"]/div[2]/table/tbody/tr[2]/td[text()="已完成"]
Run Keyword If "${bk_status}"=="True" Exit For Loop
... ELSE Log 备份未完成
Sleep 60s
END
Run Keyword If ${bk_status}==False Fail
... ELSE Log 备份成功
Sleep 15s
立即执行_完全备份
Sleep 2s
Click Element ${Now Full_Bacup_H3C}
Log 勾选完全备份
立即执行_增量备份
Sleep 2s
Click Element ${Add_Backup_H3C}
Log 勾选增量备份
立即执行_差量备份
Sleep 2s
Click Element ${Now Difference_Backup_H3C}
Log 勾选差量备份