1088 lines
75 KiB
Plaintext
1088 lines
75 KiB
Plaintext
*** Settings ***
|
|
Resource ../RE0_Common/KeyWord.robot
|
|
Resource ElementPath.robot
|
|
Library DatabaseLibrary
|
|
Library Selenium2Library
|
|
Library DateTime
|
|
Library string
|
|
Resource ../RE3_DPM/ElementPath.robot
|
|
Resource ../RE12_Archive/ElementPath.robot
|
|
Variables ../../Config/CDM/CDM_config.py
|
|
|
|
*** Keywords ***
|
|
Sqlserver备份
|
|
[Arguments] ${agent_name} ${mds_name} ${pipelineEncryption} ${pipelineCompress} ${pipelineDedup} ${SQLserver_CheckType}=SQLserver
|
|
代理策略预清理 ${agent_name}
|
|
元素点击 ${CDM_dataProtect} 点击进入副本数据保护页面 定位副本数据保护页面失败
|
|
元素点击 Xpath=//span[text()="${agent_name}"] 选择备份代理 定位备份代理失败
|
|
Mouse Out Xpath=//span[text()="${agent_name}"]
|
|
元素点击 ${Add_Sqlserver_Policy} 点击添加策略按钮 定位策略添加按钮失败
|
|
元素点击 ${SQLServer_CDM_Module} 选择sqlserver数据模块 定位sqlserver模块失败
|
|
${date} Evaluate time.strftime('%Y%m%d%H%M%S',time.localtime()) time
|
|
${random_strategyName}= Catenate SEPARATOR=_ Sqlserver ${date}
|
|
Set Suite Variable ${random_strategyName}
|
|
Log 切换为全局变量
|
|
Sleep 5s
|
|
元素输入 ${Policy_Name} ${random_strategyName} 定位策略名输入框失败
|
|
Run Keyword If "${SQLserver_CheckType}"=="Windows" windows身份验证
|
|
... ELSE IF "${SQLserver_CheckType}"=="SQLserver" SQLserver身份验证
|
|
元素点击 ${Sqlserver_CDM_NextStep_2} 点击下一步进入目标数据库界面 定位实例选择下一步按钮失败
|
|
元素点击 ${Select_Bk_DB} 勾选指定数据库 定位指定数据库勾选框失败
|
|
元素点击 ${Sqlserver_CDM_NextStep_3} 点击下一步进入任务周期界面 定位目标数据库下一步按钮失败
|
|
元素点击 ${AddTaskCycle} 点击添加任务周期 添加任务周期定位失败
|
|
元素点击 ${Cycle_Onetime} 选择仅备份一次 定位一次循环模式定位失败
|
|
元素点击 ${Cycle_Confirm} 点击确认完成任务周期设置 任务周期确定定位失败
|
|
元素点击 ${Sqlserver_CDM_NextStep_4} 点击下一步进入备份集存储页面 定位任务周期下一步定位失败
|
|
元素点击 ${Input_Choose_MDS} 选择手动指定MDS介质 定位手动选择MDS介质选项失败
|
|
元素点击 ${Select_MDS_CDM} 点击展开介质选项下拉框 定位介质下拉框失败
|
|
元素点击 xpath=//select[@id="dialogues_addCycleStorage_storagePath_selectMedia_selectedMdsIP_select"]/option[text()="${mds_name}"] 点击选择指定介质 定位指定介质失败
|
|
Run Keyword If ${pipelineDedup}==1 管道重删
|
|
元素点击 ${Sqlserver_CDM_NextStep_5} 点击下一步进入到备份高级选项页面 定位下一步按钮失败
|
|
Run Keyword If ${pipelineEncryption}==1 管道加密
|
|
Run Keyword If ${pipelineCompress}==1 管道压缩
|
|
元素点击 ${Btn_Finish_Sqlserver} 点击完成策略创建 定位策略完成失败
|
|
Sleep 2s
|
|
元素点击 ${Success_Confirm} 策略确定创建完毕 定位策略创建成功弹窗失败
|
|
FOR ${n} IN RANGE 10
|
|
${bk_status} Run Keyword And Return Status Wait Until Element Is Visible Xpath=//td[text()="${random_strategyName}"]/../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 2s
|
|
|
|
完全备份
|
|
Sleep 2s
|
|
Click Element ${Full_Backup}
|
|
Log 勾选完全备份
|
|
|
|
增量备份
|
|
Sleep 2s
|
|
Click Element ${Incremental_Backup}
|
|
Log 勾选增量备份
|
|
|
|
管道加密
|
|
Click Element ${Pipeline_Encryption_SQLServer}
|
|
Sleep 2s
|
|
Log 勾选管道加密
|
|
|
|
管道压缩
|
|
Click Element ${Pipeline_Compress_SQLServer}
|
|
Sleep 2s
|
|
Log 勾选管道压缩
|
|
|
|
管道重删
|
|
Click Element ${Pipeline_Dedup_SQLServer}
|
|
Sleep 2s
|
|
Log 勾选管道重删
|
|
|
|
代理环境清理
|
|
[Arguments] ${agent_name}
|
|
元素点击 ${CDM_dataProtect} 点击进入副本数据保护页面 定位副本数据保护页面失败
|
|
Mouse Out ${CDM_dataProtect}
|
|
Sleep 5s
|
|
元素点击 Xpath=//span[text()="${agent_name}"] 选择备份代理 定位备份代理失败
|
|
Mouse Out Xpath=//span[text()="${agent_name}"]
|
|
Sleep 5s
|
|
元素点击 xpath=//td[text()="${random_strategyName}"]/..//span[text()="删除"] 点击删除指定策略 定位删除策略按钮失败
|
|
Sleep 2s
|
|
元素点击 ${Button_Del_Policy} 确认删除策略 定位确认删除按钮失败
|
|
元素点击 ${Success_Confirm} 策略删除成功 策略删除失败
|
|
元素点击 ${CDM_BK} 点击进入副本数据备份集页面 定位副本数据页面失败
|
|
Sleep 2s
|
|
${Backup_Act}= catenate SEPARATOR=_ backupAction ${random_strategyName}
|
|
${Backup_Del}= catenate SEPARATOR=_ cdmBkset_delete ${random_strategyName}
|
|
循环点击 ${Backup_Act} ${Backup_Del}
|
|
Sleep 2s
|
|
元素点击 ${Backup_Del} 点击删除备份集 定位删除按钮失败
|
|
Sleep 2s
|
|
元素点击 ${Button_Confirm_Del} 点击确定删除备份集 定位确定按钮失败
|
|
元素点击 ${Success_Confirm} 确定完成备份集删除 定位备份集删除确定弹框失败
|
|
|
|
创建Sqlserver数据表
|
|
[Arguments] ${host} ${db_user} ${db_pwd} ${db}
|
|
Connect To Database Using Custom Params pymssql host='${host}',user='${db_user}',password='${db_pwd}',database='${db}',charset='CP936'
|
|
${row_count} Row Count SELECT * FROM dbo.SysObjects WHERE ID = object_id('test') AND OBJECTPROPERTY(ID, 'IsTable') = 1;
|
|
Run Keyword IF ${row_count}>0 Execute Sql String drop table test;
|
|
Execute Sql String use unary;
|
|
log 执行sql建表
|
|
Execute Sql String create table test(id int,dt int)
|
|
log 插入数据
|
|
Execute Sql String insert into test values(1, 2021)
|
|
log 建表完成
|
|
Disconnect From Database
|
|
Log 断开数据库连接
|
|
|
|
删除Sqlserver数据表
|
|
[Arguments] ${host} ${db_user} ${db_pwd} ${db}
|
|
Connect To Database Using Custom Params pymssql host='${host}',user='${db_user}',password='${db_pwd}',database='${db}',charset='CP936'
|
|
${row_count} Row Count SELECT * FROM dbo.SysObjects WHERE ID = object_id('test') AND OBJECTPROPERTY(ID, 'IsTable') = 1;
|
|
Execute Sql String use unary;
|
|
Run Keyword IF ${row_count}>0 Execute Sql String drop table test;
|
|
Disconnect From Database
|
|
Log 断开数据库连接
|
|
|
|
校验Sqlserver数据表
|
|
[Arguments] ${host} ${db_user} ${db_pwd} ${db}
|
|
Connect To Database Using Custom Params pymssql host='${host}',user='${db_user}',password='${db_pwd}',database='${db}',charset='CP936'
|
|
Execute Sql String use unary;
|
|
${query_result} query select * from test;
|
|
Run Keyword If ${query_result[0][1]}==2021 Log 校验成功
|
|
... ELSE Fail 数据校验失败
|
|
Execute Sql String drop table test;
|
|
Disconnect From Database
|
|
Log 断开数据库连接
|
|
|
|
Sqlserver恢复
|
|
[Arguments] ${agent_name}
|
|
元素点击 ${CDM_dataProtect} 点击进入副本数据保护页面 定位副本数据保护页面失败
|
|
Sleep 5s
|
|
元素点击 Xpath=//span[text()="${agent_name}"] 选择备份代理 定位备份代理失败
|
|
Sleep 2s
|
|
元素点击 xpath=//td[text()="${random_strategyName}"]/..//span[text()="恢复"] 点击恢复进入备份集恢复界面 定位恢复按钮失败
|
|
Sleep 5s
|
|
comment 元素点击 xpath=//button[@id="backupAction_0"] 点击展开操作 定位备份集操作按钮下拉框失败
|
|
元素点击 xpath=//div[text()="${random_strategyName}"]/../..//button 点击展开操作 定位备份集操作按钮下拉框失败
|
|
元素点击 ${CDM_BK_Recover} 点击恢复操作 定位恢复按钮失败
|
|
Comment 元素输入 ${Input_Sync_Name} ${Sys_Admin} 定位鉴权用户名输入框失败
|
|
Comment 元素输入 ${Input_Sync_Pwd} ${WebPWD} 定位鉴权密码输入框失败
|
|
Comment 元素点击 ${Sync_Confirm} 点击确定完成鉴权 定位鉴权确定按钮失败
|
|
元素点击 ${Sqlserver_Select_Agent} 点击展开恢复代理 定位展开恢复代理失败
|
|
Comment 元素点击 xpath=//dd[text()="${CDM_Sqlserver_Des_name}"] 选择目标端代理 定位目标端代理失败
|
|
元素点击 xpath=//dd[contains(text(),"${agent_name}")] 选择目标端代理 定位目标端代理失败
|
|
元素点击 ${Sqlserver_Rec_NextStep_1} 点击下一步进入实例选择界面 定位下一步按钮失败
|
|
元素点击 ${Sqlserver_Rec_NextStep_2} 点击下一步进入目标数据库选择界面 定位下一步按钮失败
|
|
元素点击 ${Recover_Target} 点击勾选恢复的数据库 定位需要恢复的数据库失败
|
|
元素点击 ${Sqlserver_Rec_NextStep_3} 点击下一步进入高级选项 定位下一步按钮失败
|
|
元素点击 ${Origin_Name_Recover} 点击勾选原名恢复 定位异名恢复按钮失败
|
|
元素输入 ${Recover_xpath} E: 定位恢复指定路径输入框失败
|
|
Comment 元素点击 ${Sqlserver_Rec_NextStep_4} 点击进入信息确认界面 定位下一步按钮失败
|
|
元素点击 ${Sqlserver_Rec_Complete} 点击完成按钮 定位完成按钮失败
|
|
元素点击 ${Btn_Second_Define} 二次确认执行恢复操作 定位确认恢复按钮失败
|
|
元素点击 ${Success_Confirm} 恢复策略添加成功 定位恢复策略添加成功弹窗的确认按钮失败
|
|
元素点击 ${Normal_Tab_Work} 点击切换到作业栏 定位作业栏失败
|
|
Sleep 2s
|
|
${Time_out} Run Keyword And Return Status Wait Until Element Is Visible ${Success_Confirm}
|
|
Run Keyword If ${Time_out}==True 元素点击 ${Success_Confirm} 点击连接超时的失败按钮 定位超时弹窗失败
|
|
comment 副本代理选择 ${agent_name}
|
|
Sleep 120s
|
|
Wait Until Element Is Visible ${Recover_Status} 60s 定位恢复状态失败
|
|
Log 恢复成功
|
|
|
|
SQLServer_CDM备份
|
|
[Arguments] ${agent_name} ${SQLserver_CheckType} ${Pipeline_encryption} ${Pipeline_compression} ${Pipeline_dedup}
|
|
元素点击 ${CDM_dataProtect} 点击副本数据保护成功 定位副本数据保护定位失败
|
|
元素输入 ${Input_Oracle_SearchName} ${CDM_MSSql_HostName} 定位搜索输入框失败
|
|
sleep 10s
|
|
元素点击 xpath=//span[text()="${CDM_MSSql_HostName}"] 选择备份代理 定位备份代理失败
|
|
SQLserver_cdm策略清理
|
|
元素点击 ${Add_Sqlserver_Policy} 点击添加策略按钮 定位策略添加按钮失败
|
|
元素点击 ${Module_Sqlserver} 选择sqlserver数据模块 定位sqlserver模块失败
|
|
log 定义策略名规则
|
|
${policy_head} Set Variable 完全备份
|
|
${date} Get Current Date result_format=%Y%m%d%H%M%S
|
|
${random_strategyName}= Catenate SEPARATOR=_ ${policy_head} ${date}
|
|
Set Global Variable ${random_strategyName}
|
|
log 输入策略名
|
|
元素输入 ${Policy_Name} ${random_strategyName} 定位策略名输入框失败
|
|
Run Keyword If "${SQLserver_CheckType}"=="windows" windows身份验证
|
|
... ELSE IF "${SQLserver_CheckType}"=="SQLserver" SQLserver身份验证
|
|
元素点击 ${Instance_Nextstep} 点击进入下一步目标数据库选择页面 定位下一步按钮失败
|
|
元素点击 ${Select_bk_SQLDB_test} 勾选指定数据库 定位指定数据库勾选框失败
|
|
元素点击 ${Select_DB_Nextstep} 点击下一步进入任务周期选择界面 定位下一步按钮失败
|
|
元素点击 ${AddTaskCycle} 点击添加任务周期 添加任务周期定位失败
|
|
元素点击 ${Cycle_Onetime} 选择仅备份一次 定位一次循环模式定位失败
|
|
元素点击 ${Cycle_Confirm} 点击确认完成任务周期设置 任务周期确定定位失败
|
|
元素点击 ${Cycle_Nextstep} 点击下一步进入备份集存储页面 任务周期下一步定位失败
|
|
Comment Run Keyword If ${Pipeline_dedup}==1 管道重删
|
|
... ELSE log 不重删
|
|
元素点击 ${Storage_Nextstep} 点击下一步进入到备份高级选项页面 定位下一步按钮失败
|
|
Run Keyword If ${Pipeline_encryption}==1 管道加密
|
|
... ELSE log 不加密
|
|
Run Keyword If ${Pipeline_compression}==1 管道压缩
|
|
... ELSE log 不压缩
|
|
Run Keyword If ${Pipeline_dedup}==1 管道重删
|
|
... ELSE log 不重删
|
|
Comment Run Keyword If ${check_attr}==1 校验
|
|
Comment Run Keyword If ${cache}==1 备份缓存 /opt
|
|
Comment 元素点击 ${Senior_Nextstep} 点击下一步进入到信息确认 定位下一步按钮失败
|
|
元素点击 ${SQLServer_PolicyComplete} 点击完成策略创建 定位策略完成失败
|
|
Sleep 2s
|
|
元素点击 ${Success_Confirm} 策略确定创建完毕 定位策略创建成功弹窗失败
|
|
FOR ${n} IN RANGE 40
|
|
${bk_status} Run Keyword And Return Status Wait Until Element Is Visible Xpath=//td[text()="${random_strategyName}"]/../td[text()="成功"]
|
|
Run Keyword If "${bk_status}"=="True" Exit For Loop
|
|
... ELSE Log 备份未完成
|
|
Sleep 30s
|
|
END
|
|
Run Keyword If ${bk_status}==False Fail
|
|
... ELSE Log 备份成功
|
|
Sleep 2s
|
|
|
|
SQLServer_CDM恢复
|
|
元素点击 ${CDM_dataProtect} 点击进入副本数据保护页面 定位副本数据保护页面失败
|
|
元素点击 Xpath=//span[text()="${CDM_MSSql_HostName}"] 选择备份代理 定位备份代理失败
|
|
元素点击 ${Backup_html} 点击进入备份集恢复界面 定位副本数据按钮失败
|
|
sleep 5s
|
|
元素点击 xpath=//tr[@data-index=0]//button[@id="backupAction_${random_strategyName}"] 点击展开操作 定位备份集操作按钮下拉框失败
|
|
sleep 5s
|
|
元素点击 ${CDM_BK_Recover} 点击恢复操作 定位恢复按钮失败
|
|
sleep 5s
|
|
元素点击 ${Button_RecoveryIdentifyVarification_CDM} 恢复身份验证下拉框 定位恢复身份验证下拉框失败
|
|
元素点击 ${Span_RecoveryIdentifyVarification_CDM} 恢复SQL身份验证 定位恢复SQL身份验证失败
|
|
元素点击 ${Recover_Nextstep_SQLServer} 点击下一步进入实例选择界面 定位下一步按钮失败
|
|
元素输入 ${SQLServer_Recory_InputPwd_CDM} ${CDM_MSSql_DB_PWD1} 定位恢复密码输入框失败
|
|
元素点击 ${Recover_Instance_Select_Nextstep} 点击下一步进入目标数据库选择界面 定位下一步按钮失败
|
|
元素点击 ${Recover_Target_sqltest} 点击勾选恢复的数据库 定位需要恢复的数据库失败
|
|
元素点击 ${Select_DB_Nextstep1} 点击下一步进入高级选项 定位下一步按钮失败
|
|
元素点击 ${Origin_Name_Recover} 点击勾选原名恢复 定位异名恢复按钮失败
|
|
元素输入 ${Recover_xpath} D: 定位恢复指定路径输入框失败
|
|
Comment 元素点击 xpath=//button[@id="cdm_sqlServer_addRecoveryPolicy_backStep45_btn"] 点击下一步进入确认恢复页面 点击下一步按钮失败
|
|
元素点击 ${SQLServer_BackupComplete} 点击完成按钮完成恢复策略创建 定位完成按钮失败
|
|
元素点击 ${Btn_Second_Define} 点击确认执行执行恢复 定位确认失败
|
|
元素点击 ${Success_Confirm} 确认恢复策略创建完成 定位恢复确认弹窗失败
|
|
元素点击 ${Normal_Tab_Work} 点击切换到作业栏 定位作业栏失败
|
|
Sleep 100s
|
|
Wait Until Element Is Visible ${Recover_Status} 30s 定位恢复状态失败
|
|
Log 恢复成功
|
|
|
|
SQLServer立即执行增量备份
|
|
元素点击 ${Run_Now} 点击立即执行按钮成功 定位立即执行按钮失败
|
|
元素点击 ${Now_Run_Type} 选择备份类型 定位选择备份类型失败
|
|
元素点击 ${Option_Increbk} 选择增量备份 定位增量备份失败
|
|
元素点击 ${Cycle_Run_Now_Finish} 点击完成按钮成功 定位完成按钮失败
|
|
元素点击 ${Cycle_Restore_Finish_OK} 点击添加成功按钮 定位添加成功按钮失败
|
|
元素点击 ${Select_JobHtml} 点击作业按钮 定位作业界面失败
|
|
log 开始增量备份
|
|
FOR ${n} IN RANGE 60
|
|
${bk_status} Run Keyword And Return Status Wait Until Element Is Visible xpath=//tr[@data-index="0"]/td[@data-field="description"]/div[text()="成功"]
|
|
Run Keyword If "${bk_status}"=="True" Exit For Loop
|
|
... ELSE Log 备份未完成
|
|
Sleep 30s
|
|
END
|
|
Run Keyword If ${bk_status}==False Fail
|
|
... ELSE Log 备份成功
|
|
Sleep 2s
|
|
|
|
SQLServer_CDM挂载
|
|
元素点击 ${CDM_dataProtect} 点击副本数据保护成功 定位副本数据保护定位失败
|
|
元素点击 xpath=//span[text()="${CDM_MSSql_HostName}"] 选择SQLServer代理机器 定位SQLServer代理机节点失败
|
|
元素点击 ${Backup_html} 点击副本管理成功 定位副本管理界面失败
|
|
sleep 5s
|
|
元素点击 xpath=//tr[@data-index=0]//button[@id="backupAction_${random_strategyName}"] 点击操作成功 定位操作按钮失败
|
|
sleep 5s
|
|
元素点击 ${Oracle_Backups_Mount} 点击挂载按钮成功 定位挂载按钮失败
|
|
sleep 5s
|
|
Comment Select From List By Label ${Select_SQLServer_hosts} ${CDM_MSSql_HostName2}
|
|
Comment sleep 5s
|
|
元素点击 ${Button_RecoveryIdentifyVarification_CDM} 点击身份验证下拉框成功 点击身份验证下拉框失败
|
|
元素点击 ${Span_RecoveryIdentifyVarification_CDM} 选择SQLserver身份验证成功 选择SQLserver身份验证失败
|
|
元素点击 ${Cycle_SQLserver_Mount_Next1} 点击下一步成功 定位挂载目标下一步失败
|
|
元素输入 xpath=//div[@ng-show="sqlserverIdentity"]/div[@class="input-group hide-password-plaintext"]/input[@class="form-control ng-pristine ng-untouched ng-valid"] ${CDM_MSSql_DB_PWD1} 输入密码失败
|
|
元素点击 ${Cycle_SQLServer_Mount_Next} 点击下一步成功 定位实例选择下一步失败
|
|
元素点击 ${Recover_Target_sqltest} 点击勾选恢复的数据库 定位需要恢复的数据库失败
|
|
元素点击 ${Cycle_SQL_Mount_Next} 点击下一步进入高级选项 定位下一步按钮失败
|
|
元素点击 ${Diff_Name_Recover} 点击异名挂载成功 点击异名挂载失败
|
|
元素输入 ${input_Diff_Name} ${CDM_MSSql_Mount_DB} 输入数据库挂载异名失败
|
|
元素点击 ${Recover_New_DB_Comfirm} 点击确定按钮成功 点击确定按钮失败
|
|
Comment 元素点击 ${Cycle_SQLserver_Mount_Next4} 点击下一步进入确认挂载成功 点击下一步进入确认挂载失败
|
|
元素点击 ${SQLServer_BackupComplete} 点击完成按钮完成恢复策略创建 定位完成按钮失败
|
|
元素点击 ${Success_Confirm} 确认恢复策略创建完成 定位恢复确认弹窗失败
|
|
Comment 元素输入 ${Input_Oracle_SearchName} ${CDM_MSSql_HostName} 定位搜索输入框失败
|
|
sleep 5s
|
|
元素点击 xpath=//span[text()="${CDM_MSSql_HostName}"] 选择挂载代理机器 定位挂载代理机节点失败
|
|
元素点击 ${Select_JobHtml} 点击作业界面成功 定位作业界面失败
|
|
sleep 60s
|
|
Wait Until Page Contains Element ${SQLServer_Mount_JobStatus} 300s 挂载未完成
|
|
Log 挂载成功
|
|
|
|
SQLServer_CDM停止挂载
|
|
元素点击 ${fuben_yingyong} 点击副本应用成功 点击副本应用失败
|
|
元素点击 ${sqlserver_umount} 点击卸载按钮成功 点击卸载按钮失败
|
|
元素点击 ${umount_sure} 点击卸载确定按钮成功 点击卸载确定按钮失败
|
|
sleep 5s
|
|
元素点击 xpath=//a[@id="unnamed_module_layerCancel"] 点击确定按钮成功 点击确定按钮失败
|
|
Log 停止挂载成功
|
|
|
|
|
|
MSSQL_CDM备份
|
|
[Arguments] ${agent_name} ${SQLserver_CheckType} ${Pipeline_encryption} ${Pipeline_compression} ${Pipeline_dedup}
|
|
元素点击 ${CDM_dataProtect} 点击副本数据保护成功 定位副本数据保护定位失败
|
|
元素输入 ${Input_Oracle_SearchName} ${agent_name} 定位搜索输入框失败
|
|
sleep 10s
|
|
元素点击 xpath=//span[text()="${agent_name}"] 选择备份代理 定位备份代理失败
|
|
SQLserver_cdm策略清理
|
|
元素点击 ${Add_Sqlserver_Policy} 点击添加策略按钮 定位策略添加按钮失败
|
|
元素点击 ${Module_Sqlserver} 选择sqlserver数据模块 定位sqlserver模块失败
|
|
log 定义策略名规则
|
|
${policy_head} Set Variable 完全备份
|
|
${date} Get Current Date result_format=%Y%m%d%H%M%S
|
|
${random_strategyName}= Catenate SEPARATOR=_ ${policy_head} ${date}
|
|
Set Global Variable ${random_strategyName}
|
|
log 输入策略名
|
|
元素输入 ${Policy_Name} ${random_strategyName} 定位策略名输入框失败
|
|
Run Keyword If "${SQLserver_CheckType}"=="windows" windows身份验证
|
|
... ELSE IF "${SQLserver_CheckType}"=="SQLserver" SQLserver身份验证
|
|
元素点击 ${Instance_Nextstep} 点击进入下一步目标数据库选择页面 定位下一步按钮失败
|
|
元素点击 ${Select_bk_SQLDB_test} 勾选指定数据库 定位指定数据库勾选框失败
|
|
元素点击 ${Select_bk_SQLDB_UNARY} 勾选指定数据库 定位指定数据库勾选框失败
|
|
元素点击 ${Button_baseFilter_CDM} 点击过滤设置 定位过滤设置失败
|
|
元素点击 ${Button_baseFilter_baseFilterKe_CDM} 点击文字过滤 定位文字过滤设置失败
|
|
元素输入 ${Input_baseFilter_keyFilterCon_CDM} test 定位关键字输入框失败
|
|
元素点击 ${Button_baseFilter_keyFilterCon_add} 点击添加关键字 定位添加按钮失败
|
|
元素点击 ${Button_baseFilter_keyFilterCon_ok} 点击确定确定添加关键字 定位添加按钮失败
|
|
元素点击 ${Select_DB_Nextstep} 点击下一步进入任务周期选择界面 定位下一步按钮失败
|
|
元素点击 ${AddTaskCycle} 点击添加任务周期 添加任务周期定位失败
|
|
元素点击 ${Cycle_Onetime} 选择仅备份一次 定位一次循环模式定位失败
|
|
元素点击 ${Cycle_Confirm} 点击确认完成任务周期设置 任务周期确定定位失败
|
|
元素点击 ${Cycle_Nextstep} 点击下一步进入备份集存储页面 任务周期下一步定位失败
|
|
Comment Run Keyword If ${Pipeline_dedup}==1 管道重删
|
|
... ELSE log 不重删
|
|
元素点击 ${Storage_Nextstep} 点击下一步进入到备份高级选项页面 定位下一步按钮失败
|
|
Run Keyword If ${Pipeline_encryption}==1 管道加密
|
|
... ELSE log 不加密
|
|
Run Keyword If ${Pipeline_compression}==1 管道压缩
|
|
... ELSE log 不压缩
|
|
Run Keyword If ${Pipeline_dedup}==1 管道重删
|
|
... ELSE log 不重删
|
|
Comment Run Keyword If ${check_attr}==1 校验
|
|
Comment Run Keyword If ${cache}==1 备份缓存 /opt
|
|
Comment 元素点击 ${Senior_Nextstep} 点击下一步进入到信息确认 定位下一步按钮失败
|
|
元素点击 ${SQLServer_PolicyComplete} 点击完成策略创建 定位策略完成失败
|
|
Sleep 2s
|
|
元素点击 ${Success_Confirm} 策略确定创建完毕 定位策略创建成功弹窗失败
|
|
MSSQL作业校验 ${random_strategyName}
|
|
Log 备份作业执行成功
|
|
|
|
MSSQL作业校验
|
|
[Arguments] ${workname}
|
|
# 切换到作业
|
|
元素点击 ${Normal_Tab_Work} 点击切换到作业栏 定位作业栏失败
|
|
# 输入策略查询
|
|
元素输入 ${input_cdm_tab_work_PolicyName} ${workname} 定位关键字输入框失败
|
|
元素点击 ${Button_cdm_tab_work_search} 点击查询按钮 定位查询按钮失败
|
|
# 确认创建成功了
|
|
FOR ${counter} IN RANGE 20
|
|
Log ${counter}
|
|
${select_text}= Execute Javascript return ${Jquery_select_count}
|
|
Log 查询到的作业个数:${select_text}
|
|
Run Keyword If '${select_text}' >= '2' Exit For Loop
|
|
... ELSE Log 作业尚未创建
|
|
Sleep 2s
|
|
元素点击 ${Button_cdm_tab_work_search} 点击查询按钮 定位查询按钮失败
|
|
END
|
|
Log 作业创建成功,正在运行中
|
|
# 等待运行完成
|
|
FOR ${index} IN RANGE 300
|
|
Log 第${index}次查询作业状态
|
|
${task_run}= Execute Javascript return ${Jquery_task_status}
|
|
Log 作业状态:${task_run}
|
|
Run Keyword If '${task_run}' == '成功' or '${task_run}' == '失败' Exit For Loop
|
|
... ELSE Log 任务尚未执行完成
|
|
Sleep 2s
|
|
元素点击 ${Button_cdm_tab_work_search} 点击查询按钮 定位查询按钮失败
|
|
END
|
|
# 最后再判断一下确保是成功的
|
|
Should Be Equal As Strings ${task_run} 成功 任务运行失败
|
|
Log 作业策略执行成功
|
|
|
|
MSSQL_CDM恢复
|
|
元素点击 ${Backup_html} 点击进入备份集恢复界面 定位副本数据按钮失败
|
|
sleep 5s
|
|
# 校验上一步备份产生的结果
|
|
元素输入 ${input_policy_backTabPolicy} ${random_strategyName} 定位查询备份策略输入框失败
|
|
元素点击 ${Cycle_Search_PolicyName} 点击查询按钮 定位查询按钮失败
|
|
# 获取查询到的数量
|
|
${select_count}= Execute Javascript return ${Count_bk_num}
|
|
Run Keyword If '${select_count}' != '1' Fail 产生的备份集数量不对
|
|
... ELSE Log 备份结果正确
|
|
#进行恢复
|
|
元素点击 xpath=//tr[@data-index=0]//button[@id="backupAction_${random_strategyName}"] 点击展开操作 定位备份集操作按钮下拉框失败
|
|
sleep 5s
|
|
元素点击 ${CDM_BK_Recover} 点击恢复操作 定位恢复按钮失败
|
|
sleep 5s
|
|
元素点击 ${Recover_Nextstep_SQLServer} 点击下一步进入实例选择界面 定位下一步按钮失败
|
|
元素点击 ${Recover_Instance_Select_Nextstep} 点击下一步进入目标数据库选择界面 定位下一步按钮失败
|
|
元素点击 ${Recover_Target_UNARY} 点击勾选恢复的数据库 定位需要恢复的数据库失败
|
|
元素点击 ${Select_DB_Nextstep1} 点击下一步进入高级选项 定位下一步按钮失败
|
|
元素点击 ${Origin_Name_Recover} 点击勾选原名恢复 定位异名恢复按钮失败
|
|
元素输入 ${Recover_xpath} ${recTargetPath} 定位恢复指定路径输入框失败
|
|
Comment 元素点击 xpath=//button[@id="cdm_sqlServer_addRecoveryPolicy_backStep45_btn"] 点击下一步进入确认恢复页面 点击下一步按钮失败
|
|
元素点击 ${SQLServer_BackupComplete} 点击完成按钮完成恢复策略创建 定位完成按钮失败
|
|
元素点击 ${Btn_Second_Define} 点击确认执行执行恢复 定位确认失败
|
|
元素点击 ${Success_Confirm} 确认恢复策略创建完成 定位恢复确认弹窗失败
|
|
# 恢复作业的作业名是根据时间来的,这里生成一下
|
|
${Date}= Get Current Date result_format=%Y-%m-%d %H:%M
|
|
${recoveryname}= Catenate SEPARATOR= 恢复策略 ${Date[:-1]}
|
|
Log 恢复作业的名称是:${recoveryname}
|
|
MSSQL作业校验 ${recoveryname}
|
|
Log 恢复作业执行成功
|
|
|
|
|
|
执行SQL建表
|
|
[Arguments] ${tablename} ${hostip} ${CDMSQL_PWD} ${CDMSQL_DB_User} ${CDMMSSql_DB}
|
|
执行SQL删表 ${tablename} ${hostip} ${CDMSQL_PWD}
|
|
log 连接数据库
|
|
Connect To Database Using Custom Params pymssql host='${hostip}',user='${CDMSQL_DB_User}',password='${CDMSQL_PWD}',database='${CDMMSSql_DB}'
|
|
log 创建数据表
|
|
Execute Sql String create table ${tablename}(id int,name char(50))
|
|
log 插入数据
|
|
Execute Sql String insert into ${tablename} values(1,'aaa')
|
|
Execute Sql String insert into ${tablename} values(2,'bbb')
|
|
Execute Sql String insert into ${tablename} values(3,'ccc')
|
|
${out}= Row Count select * from ${tablename}
|
|
Set Suite Variable ${out}
|
|
log ${out}
|
|
Disconnect From Database
|
|
Log 断开数据库连接
|
|
|
|
执行SQL删表
|
|
[Arguments] ${tablename} ${hostip} ${SQLServer_passwd}
|
|
Connect To Database Using Custom Params pymssql host='${hostip}',user='${CDM_MSSql_DB_User}',password='${SQLServer_passwd}',database='${CDM_MSSql_DB}'
|
|
${row_count} Row Count SELECT \ * FROM dbo.SysObjects WHERE ID = object_id(N'${tablename}') AND OBJECTPROPERTY(ID, 'IsTable') = 1
|
|
Run Keyword IF ${row_count}>0 Execute Sql String drop table ${tablename}
|
|
Disconnect From Database
|
|
Log 断开数据库连接
|
|
|
|
|
|
MSSQL建库
|
|
[Arguments] ${databasename} ${hostip} ${SQLServer_passwd}
|
|
MSSQL删库 ${databasename} ${hostip} ${SQLServer_passwd}
|
|
log 连接数据库
|
|
Connect To Database Using Custom Params pymssql host='${hostip}',user='${CDM_MSSql_DB_User}',password='${SQLServer_passwd}',autocommit=${True}
|
|
log 创建UNARYK库
|
|
Execute Sql String create database ${databasename}
|
|
Disconnect From Database
|
|
Log 断开数据库连接
|
|
|
|
MSSQL删库
|
|
[Arguments] ${databasename} ${hostip} ${SQLServer_passwd}
|
|
Connect To Database Using Custom Params pymssql host='${hostip}',user='${CDM_MSSql_DB_User}',password='${SQLServer_passwd}',database='master',autocommit=${True}
|
|
${row_count} Row Count SELECT \ * FROM master.dbo.sysdatabases where name='${databasename}'
|
|
Run Keyword IF ${row_count}>0 Execute Sql String DROP DATABASE ${databasename}
|
|
Disconnect From Database
|
|
Log 断开数据库连接
|
|
|
|
MSSQL建表并插入当前时间点
|
|
[Arguments] ${tablename} ${hostip} ${CDMSQL_PWD} ${CDMSQL_DB_User} ${CDMMSSql_DB}
|
|
log 连接数据库
|
|
Connect To Database Using Custom Params pymssql host='${hostip}',user='${CDMSQL_DB_User}',password='${CDMSQL_PWD}',database='${CDMMSSql_DB}'
|
|
log 创建数据表
|
|
Execute Sql String create table ${tablename}(test char(50))
|
|
log 插入数据
|
|
${Date}= Get Current Date result_format=%Y%m%d%H%M%S
|
|
Log 插入:${Date}
|
|
Execute Sql String insert into ${tablename}(test) values('${Date}')
|
|
${out}= Row Count select * from ${tablename}
|
|
Set Suite Variable ${out}
|
|
log ${out}
|
|
Disconnect From Database
|
|
Log 断开数据库连接
|
|
|
|
MSSQL删除表
|
|
[Arguments] ${tablename} ${hostip} ${SQLServer_passwd} ${CDMMSSql_DB}
|
|
Connect To Database Using Custom Params pymssql host='${hostip}',user='${CDM_MSSql_DB_User}',password='${SQLServer_passwd}',database='${CDMMSSql_DB}'
|
|
${row_count} Row Count SELECT \ * FROM ${CDMMSSql_DB}.dbo.sysObjects WHERE name='${tablename} '
|
|
Run Keyword IF ${row_count}>0 Execute Sql String drop table ${tablename}
|
|
Disconnect From Database
|
|
Log 断开数据库连接
|
|
|
|
MSSQL校验
|
|
[Arguments] ${tablename} ${hostip} ${SQLServer_passwd} ${CDM_MSSql_DB}
|
|
log 连接数据库
|
|
Connect To Database Using Custom Params pymssql host='${hostip}',user='${CDM_MSSql_DB_User}',password='${SQLServer_passwd}',database='${CDM_MSSql_DB}'
|
|
log 获取函数
|
|
${row_count} Row Count SELECT \ * FROM ${CDMMSSql_DB}.dbo.sysObjects WHERE name='${tablename} '
|
|
Run Keyword IF ${row_count} == None Return From Keyword ${False}
|
|
Run Keyword IF ${row_count}>0 log 存在表${tablename}
|
|
... ELSE Fail 表不存在,恢复失败
|
|
${result} Row Count select * from ${tablename}
|
|
Run Keyword IF "${out}"=="${result}" log 数据校验一致,恢复成功
|
|
... ELSE Fail 数据校验不一致,恢复失败
|
|
Disconnect From Database
|
|
Log 断开数据库连接
|
|
|
|
执行SQL查询
|
|
[Arguments] ${tablename} ${hostip} ${SQLServer_passwd}
|
|
log 连接数据库
|
|
Connect To Database Using Custom Params pymssql host='${hostip}',user='${CDM_MSSql_DB_User}',password='${SQLServer_passwd}',database='${CDM_MSSql_DB}'
|
|
${row_count} Row Count SELECT \ * FROM dbo.SysObjects WHERE ID = object_id(N'${tablename}') AND OBJECTPROPERTY(ID, 'IsTable') = 1
|
|
Run Keyword IF ${row_count}>0 log 存在表${tablename}
|
|
${out}= Row Count select * from ${tablename}
|
|
log ${out}
|
|
Return From Keyword ${out}
|
|
Disconnect From Database
|
|
Log 断开数据库连接
|
|
|
|
执行SQL校验
|
|
[Arguments] ${tablename} ${hostip} ${SQLServer_passwd} ${CDM_MSSql_DB}
|
|
log 连接数据库
|
|
Connect To Database Using Custom Params pymssql host='${hostip}',user='${CDM_MSSql_DB_User}',password='${SQLServer_passwd}',database='${CDM_MSSql_DB}'
|
|
log 获取函数
|
|
${row_count} Row Count SELECT \ * FROM dbo.SysObjects WHERE ID = object_id(N'${tablename}') AND OBJECTPROPERTY(ID, 'IsTable') = 1
|
|
Run Keyword IF ${row_count} == None Return From Keyword ${False}
|
|
Run Keyword IF ${row_count}>0 log 存在表${tablename}
|
|
${result} Row Count select * from ${tablename}
|
|
Run Keyword IF "${out}"=="${result}" log 数据校验一致,恢复成功
|
|
... ELSE Fail 数据校验不一致,恢复失败
|
|
|
|
执行策略清理
|
|
元素点击 ${CDM_dataProtect} 点击进入副本数据保护页面 定位副本数据保护页面失败
|
|
元素点击 ${Cycle_CDM_Policy} 点击进入定时保护策略栏 定位定时数据保护页面失败
|
|
元素点击 Xpath=//span[text()="${CDM_MSSql_HostName}"] 选择备份代理 定位备份代理失败
|
|
Sleep 10s
|
|
元素点击 xpath=//*[@id="compileButton0"]/span[text()="删除"] 点击删除指定策略 定位删除策略按钮失败
|
|
元素点击 ${Button_Del_Policy} 确认删除策略 定位确认删除按钮失败
|
|
元素点击 ${Success_Confirm} 策略删除成功 策略删除失败
|
|
|
|
执行备份集清理
|
|
[Arguments] ${num}
|
|
元素点击 ${CDM_dataProtect} 点击进入副本数据保护页面 定位副本数据保护页面失败
|
|
元素点击 Xpath=//span[text()="${CDM_MSSql_HostName}"] 选择备份代理 定位备份代理失败
|
|
元素点击 ${CDM_BK} 点击进入副本数据备份集页面 定位副本数据页面失败
|
|
元素点击 xpath=//*[@id="backupAction_${num}"] 点击展开操作 定位备份集操作按钮下拉框失败
|
|
sleep 5s
|
|
元素点击 ${CDM_BK_Del} 点击删除备份集 定位删除按钮失败
|
|
sleep 5s
|
|
元素点击 ${CDM_Complete_Del} 点击完全删除 定位完全删除失败
|
|
元素点击 ${Button_Confirm_Del} 点击确定删除备份集 定位确定按钮失败
|
|
元素点击 ${Success_Confirm} 确定完成备份集删除 定位备份集删除确定弹框失败
|
|
|
|
代理策略预清理
|
|
[Arguments] ${agent_name}
|
|
元素点击 ${CDM_dataProtect} 点击进入副本数据保护页面 定位副本数据保护页面失败
|
|
Mouse Out ${CDM_dataProtect}
|
|
Sleep 5s
|
|
元素点击 Xpath=//span[text()="${agent_name}"] 选择备份代理 定位备份代理失败
|
|
Mouse Out Xpath=//span[text()="${agent_name}"]
|
|
Sleep 5s
|
|
${Policy_Status}= Run Keyword And Return Status Wait Until Element Is Visible xpath=//div[@id="compileButton0"]/span[text()="删除"]
|
|
Run Keyword If "${Policy_Status}"=="True" 删除策略
|
|
... ELSE Log 无数据残留
|
|
Sleep 5s
|
|
|
|
副本备份集删除加载
|
|
[Arguments] ${agent_name}
|
|
元素点击 ${CDM_dataProtect} 点击进入副本数据保护页面 定位副本数据保护页面失败
|
|
元素点击 Xpath=//span[text()="${agent_name}"] 选择备份代理 定位备份代理失败
|
|
Mouse Out Xpath=//span[text()="${agent_name}"]
|
|
元素点击 ${CDM_BK} 点击进入副本数据备份集页面 定位副本数据备份集页面失败
|
|
Sleep 2s
|
|
循环点击 xpath=//div[text()="${random_strategyName}"]/../..//button ${CDM_BK_Del}
|
|
Sleep 2s
|
|
元素点击 ${CDM_BK_Del} 点击删除备份集 定位删除按钮失败
|
|
Sleep 2s
|
|
元素点击 ${Button_Confirm_Del} 点击确定删除备份集 定位确定按钮失败
|
|
元素点击 ${Success_Confirm} 确定完成备份集删除 定位备份集删除确定弹框失败
|
|
Sleep 30s
|
|
${Same_Bk_Result}= Run Keyword And Return Status Wait Until Element Is Visible xpath=//div[text()="${random_strategyName}"]/../..//button 10s
|
|
Run Keyword If ${Same_Bk_Result}==True 副本备份集删除 ${agent_name}
|
|
Sleep 30s
|
|
元素点击 ${Archive} 点击进入创建归档策略栏 定位左侧创建归档策略栏失败
|
|
元素点击 ${Arched_Bk} 点击切换到已归档备份集一栏 定位已归档备份集失败
|
|
元素输入 ${Input_Arch_PolicyName} ${archive_policy} 定位归档策略输入框失败
|
|
元素点击 ${Button_Search_Policy} 点击搜索查询已归档备份集 定位搜索按钮失败
|
|
元素点击 xpath=//tr[1]//div[text()="${random_strategyName}"]/../..//button[text()="加载"] 点击加载备份集 定位备份集加载按钮失败
|
|
元素输入 ${Input_Load_PolicyName} 加载${random_strategyName}备份集 定位加载策略输入框失败
|
|
元素点击 ${Complete_Load_Policy} 点击完成加载策略 定位完成按钮失败
|
|
元素点击 ${Success_Confirm} 确定备份集加载任务启动成功 定位备份集加载确定弹框失败
|
|
元素点击 ${Archive_Monitor} 点击切换到归档任务监控界面 定位归档任务监控栏失败
|
|
元素输入 ${Archive_Task_Name} ${random_strategyName} 定位归档任务输入框失败
|
|
元素点击 ${Search_Archive_Task} 点击查询按钮搜索归档任务 定位归档任务查询按钮失败
|
|
FOR ${n} IN RANGE 10
|
|
${jz_status} Run Keyword And Return Status Wait Until Element Is Visible xpath=//td[contains(text(),"加载成功")]
|
|
Run Keyword If "${jz_status}"=="True" Exit For Loop
|
|
... ELSE Log 加载未完成
|
|
Sleep 30s
|
|
END
|
|
Run Keyword If "${jz_status}"=="False" Fail
|
|
... ELSE Log 加载成功
|
|
元素点击 ${Timed_DataProtect} 点击进入定时数据保护页面 定位定时数据保护失败
|
|
元素点击 Xpath=//span[text()="${agent_name}"] 选择备份代理 定位备份代理失败
|
|
Mouse Out Xpath=//span[text()="${agent_name}"]
|
|
元素点击 ${BackupSet} 点击进入备份集一栏 定位备份集栏失败
|
|
Sleep 2s
|
|
|
|
删除策略
|
|
元素点击 xpath=//div[@id="compileButton0"]/span[text()="删除"] 点击删除策略 定位策略删除按钮失败
|
|
元素点击 ${Button_Del_Policy} 确认删除策略 定位确认删除按钮失败
|
|
元素点击 ${Success_Confirm} 策略删除成功 策略删除失败
|
|
|
|
副本备份集删除
|
|
[Arguments] ${agent_name}
|
|
元素点击 ${CDM_dataProtect} 点击进入副本数据保护页面 定位副本数据保护页面失败
|
|
元素点击 Xpath=//span[text()="${agent_name}"] 选择备份代理 定位备份代理失败
|
|
Mouse Out Xpath=//span[text()="${agent_name}"]
|
|
元素点击 ${CDM_BK} 点击进入副本数据备份集页面 定位副本数据备份集页面失败
|
|
Sleep 2s
|
|
循环点击 xpath=//div[text()="${random_strategyName}"]/../..//button ${CDM_BK_Del}
|
|
Sleep 2s
|
|
元素点击 ${CDM_BK_Del} 点击删除备份集 定位删除按钮失败
|
|
Sleep 2s
|
|
元素点击 ${Button_Confirm_Del} 点击确定删除备份集 定位确定按钮失败
|
|
元素点击 ${Success_Confirm} 确定完成备份集删除 定位备份集删除确定弹框失败
|
|
Sleep 30s
|
|
|
|
副本备份集加载
|
|
[Arguments] ${agent_name}
|
|
元素点击 ${Archive} 点击进入创建归档策略栏 定位左侧创建归档策略栏失败
|
|
元素点击 ${Arched_Bk} 点击切换到已归档备份集一栏 定位已归档备份集失败
|
|
元素输入 ${Input_Arch_PolicyName} ${archive_policy} 定位归档策略输入框失败
|
|
元素点击 ${Button_Search_Policy} 点击搜索查询已归档备份集 定位搜索按钮失败
|
|
元素点击 xpath=//tr[1]//div[text()="${random_strategyName}"]/../..//button[text()="加载"] 点击加载备份集 定位备份集加载按钮失败
|
|
元素输入 ${Input_Load_PolicyName} 加载${random_strategyName}备份集 定位加载策略输入框失败
|
|
元素点击 ${Complete_Load_Policy} 点击完成加载策略 定位完成按钮失败
|
|
元素点击 ${Success_Confirm} 确定备份集加载任务启动成功 定位备份集加载确定弹框失败
|
|
元素点击 ${Archive_Monitor} 点击切换到归档任务监控界面 定位归档任务监控栏失败
|
|
元素输入 ${Archive_Task_Name} ${random_strategyName} 定位归档任务输入框失败
|
|
元素点击 ${Search_Archive_Task} 点击查询按钮搜索归档任务 定位归档任务查询按钮失败
|
|
FOR ${n} IN RANGE 10
|
|
${jz_status} Run Keyword And Return Status Wait Until Element Is Visible xpath=//td[contains(text(),"加载成功")]
|
|
Run Keyword If "${jz_status}"=="True" Exit For Loop
|
|
... ELSE Log 加载未完成
|
|
Sleep 30s
|
|
END
|
|
Run Keyword If "${jz_status}"=="False" Fail
|
|
... ELSE Log 加载成功
|
|
元素点击 ${Timed_DataProtect} 点击进入定时数据保护页面 定位定时数据保护失败
|
|
元素点击 Xpath=//span[text()="${agent_name}"] 选择备份代理 定位备份代理失败
|
|
Mouse Out Xpath=//span[text()="${agent_name}"]
|
|
元素点击 ${BackupSet} 点击进入备份集一栏 定位备份集栏失败
|
|
Sleep 2s
|
|
|
|
sqlserverCDM恢复_磁带库
|
|
[Arguments] ${agent_name}
|
|
元素点击 ${CDM_dataProtect} 点击进入副本数据保护页面 定位副本数据保护页面失败
|
|
元素点击 Xpath=//span[text()="${agent_name}"] 选择备份代理 定位备份代理失败
|
|
Sleep 10s
|
|
元素点击 xpath=//td[text()="${random_strategyName}"]/..//span[text()="恢复"] 点击恢复进入备份集恢复界面 定位恢复按钮失败
|
|
sleep 5s
|
|
元素点击 xpath=//div[text()="${random_strategyName}"]/../..//button 点击展开操作 定位备份集操作按钮下拉框失败
|
|
sleep 5s
|
|
元素点击 ${CDM_BK_Recover} 点击恢复操作 定位恢复按钮失败
|
|
sleep 5s
|
|
元素点击 ${Recover_Nextstep_SQLServer} 点击下一步进入实例选择界面 定位下一步按钮失败
|
|
元素点击 ${Recover_Instance_Select_Nextstep} 点击下一步进入目标数据库选择界面 定位下一步按钮失败
|
|
元素点击 ${Recover_Target} 点击勾选恢复的数据库 定位需要恢复的数据库失败
|
|
元素点击 ${Select_DB_Nextstep1} 点击下一步进入高级选项 定位下一步按钮失败
|
|
元素点击 ${Origin_Name_Recover} 点击勾选原名恢复 定位异名恢复按钮失败
|
|
元素输入 ${Recover_xpath} E: 定位恢复指定路径输入框失败
|
|
元素点击 ${Sqlserver_Rec_NextStep_4} 点击进入信息确认界面 定位下一步按钮失败
|
|
元素点击 ${Sqlserver_Rec_Complete} 点击完成按钮,完成复策略创建 定位完成按钮失败
|
|
元素点击 ${Success_Confirm} 确认恢复策略创建完成 定位恢复确认弹窗失败
|
|
元素点击 ${Normal_Tab_Work} 点击切换到作业栏 定位作业栏失败
|
|
Sleep 2s
|
|
${Time_out} Run Keyword And Return Status Wait Until Element Is Visible ${Success_Confirm}
|
|
Run Keyword If ${Time_out}==True 元素点击 ${Success_Confirm} 点击连接超时的失败按钮 定位超时弹窗失败
|
|
副本代理选择 ${CDM_Sqlserver_Des_name}
|
|
Sleep 60s
|
|
Wait Until Element Is Visible ${Recover_Status} 30s 定位恢复状态失败
|
|
Log 恢复成功
|
|
|
|
Sqlserver立即执行
|
|
[Arguments] ${bk_style}
|
|
元素点击 ${Run_Now} 点击立即执行按钮成功 定位立即执行按钮失败
|
|
循环点击 ${Now_Run_Type} ${Option_Permanent_increment}
|
|
Run Keyword If "${bk_style}"=="完全" Click Element ${Option_Fullbk}
|
|
... ELSE IF "${bk_style}"=="增量" Click Element ${Option_Increbk}
|
|
... ELSE IF "${bk_style}"=="永久增量" Click Element ${Option_Permanent_increment}
|
|
元素点击 ${Cycle_Run_Now_Finish} 点击完成按钮成功 定位完成按钮失败
|
|
元素点击 ${Cycle_Restore_Finish_OK} 点击添加成功按钮 定位添加成功按钮失败
|
|
元素点击 ${Select_JobHtml} 点击作业按钮 定位作业界面失败
|
|
log 开始备份
|
|
FOR ${n} IN RANGE 60
|
|
${bk_status} Run Keyword And Return Status Wait Until Element Is Visible Xpath=//tbody/tr[1]/td/div[text()="成功"]
|
|
Run Keyword If "${bk_status}"=="True" Exit For Loop
|
|
... ELSE Log 备份未完成
|
|
Sleep 30s
|
|
END
|
|
Run Keyword If ${bk_status}==False Fail
|
|
... ELSE Log 备份成功
|
|
Sleep 2s
|
|
|
|
Sqlserver恢复_归档
|
|
[Arguments] ${agent_name}
|
|
元素点击 ${CDM_dataProtect} 点击进入副本数据保护页面 定位副本数据保护页面失败
|
|
Sleep 5s
|
|
元素点击 Xpath=//span[text()="${agent_name}"] 选择备份代理 定位备份代理失败
|
|
Sleep 2s
|
|
元素点击 xpath=//td[text()="${random_strategyName}"]/..//span[text()="恢复"] 点击恢复进入备份集恢复界面 定位恢复按钮失败
|
|
Sleep 5s
|
|
元素点击 xpath=//button[@id="backupAction_1"] 点击展开操作 定位备份集操作按钮下拉框失败
|
|
元素点击 ${CDM_BK_Recover} 点击恢复操作 定位恢复按钮失败
|
|
元素点击 ${Recover_Nextstep} 点击下一步进入实例选择界面 定位下一步按钮失败
|
|
元素点击 ${Recover_Instance_Select_Nextstep} 点击下一步进入目标数据库选择界面 定位下一步按钮失败
|
|
元素点击 ${Recover_Target} 点击勾选恢复的数据库 定位需要恢复的数据库失败
|
|
元素点击 ${SqlServer_Recover_Target_Nextstep} 点击下一步进入高级选项 定位下一步按钮失败
|
|
元素点击 ${Origin_Name_Recover} 点击勾选原名恢复 定位异名恢复按钮失败
|
|
元素输入 ${Recover_xpath} E: 定位恢复指定路径输入框失败
|
|
元素点击 ${Complete_Mssql_Rec} 点击完成按钮完成恢复策略创建 定位完成按钮失败
|
|
元素点击 ${Success_Confirm} 确认恢复策略创建完成 定位恢复确认弹窗失败
|
|
元素点击 ${Normal_Tab_Work} 点击切换到作业栏 定位作业栏失败
|
|
Sleep 60s
|
|
Wait Until Element Is Visible ${Recover_Status} 30s 定位恢复状态失败
|
|
Log 恢复成功
|
|
|
|
归档路径查询_Sqlserver
|
|
[Arguments] ${agent_name} ${tape_name}
|
|
元素点击 ${CDM_dataProtect} 点击进入副本数据保护页面 定位副本数据保护页面失败
|
|
Sleep 5s
|
|
元素点击 Xpath=//span[text()="${agent_name}"] 选择备份代理 定位备份代理失败
|
|
Sleep 2s
|
|
元素点击 xpath=//td[text()="${random_strategyName}"]/..//span[text()="恢复"] 点击恢复进入备份集恢复界面 定位恢复按钮失败
|
|
Sleep 5s
|
|
循环点击 xpath=//button[@id="backupAction_0"] ${Sqlserver_Bk_More}
|
|
元素点击 ${Sqlserver_Bk_More} 点击详情查看备份集属性 定位详情失败
|
|
元素点击 ${Archpath} 点击归档路径查询 定位归档路径查询按钮失败
|
|
Wait Until Element Is Visible xpath=//div[text()="${tape_name}"] 15s 归档路径查询失败
|
|
|
|
副本代理选择
|
|
[Arguments] ${agent_name}
|
|
元素点击 ${CDM_dataProtect} 点击进入副本数据保护页面 定位副本数据保护失败
|
|
元素输入 ${Search_Agent} ${agent_name} 定位代理名称输入框失败
|
|
元素点击 xpath=//span[text()="${agent_name}"] 点击选择代理 定位代理所在位置失败
|
|
|
|
副本备份集删除加载_D2D2B
|
|
[Arguments] ${agent_name}
|
|
元素点击 ${CDM_dataProtect} 点击进入副本数据保护页面 定位副本数据保护页面失败
|
|
元素点击 Xpath=//span[text()="${agent_name}"] 选择备份代理 定位备份代理失败
|
|
Mouse Out Xpath=//span[text()="${agent_name}"]
|
|
元素点击 ${CDM_BK} 点击进入副本数据备份集页面 定位副本数据备份集页面失败
|
|
Sleep 2s
|
|
循环点击 xpath=//div[text()="${random_strategyName}"]/../..//button ${CDM_BK_Del}
|
|
Sleep 2s
|
|
元素点击 ${CDM_BK_Del} 点击删除备份集 定位删除按钮失败
|
|
Sleep 2s
|
|
元素点击 ${Button_Confirm_Del} 点击确定删除备份集 定位确定按钮失败
|
|
元素点击 ${Success_Confirm} 确定完成备份集删除 定位备份集删除确定弹框失败
|
|
Sleep 30s
|
|
元素点击 ${Archive} 点击进入创建归档策略栏 定位左侧创建归档策略栏失败
|
|
元素点击 ${Arched_Bk} 点击切换到已归档备份集一栏 定位已归档备份集失败
|
|
元素输入 ${Input_Arch_PolicyName} ${archive_policy} 定位归档策略输入框失败
|
|
元素点击 ${Button_Search_Policy} 点击搜索查询已归档备份集 定位搜索按钮失败
|
|
Sleep 300s
|
|
元素点击 xpath=//tr[1]//div[text()="${random_strategyName}"]/../..//button[text()="加载"] 点击加载备份集 定位备份集加载按钮失败
|
|
元素输入 ${Input_Load_PolicyName} 加载${random_strategyName}备份集 定位加载策略输入框失败
|
|
元素点击 ${Complete_Load_Policy} 点击完成加载策略 定位完成按钮失败
|
|
元素点击 ${Success_Confirm} 确定备份集加载成功 定位备份集加载确定弹框失败
|
|
元素点击 ${Timed_DataProtect} 点击进入副本数据管理页面 定位副本数据管理失败
|
|
元素点击 Xpath=//span[text()="${agent_name}"] 选择备份代理 定位备份代理失败
|
|
Mouse Out Xpath=//span[text()="${agent_name}"]
|
|
元素点击 ${BackupSet} 点击进入副本数据一栏 定位副本数据栏失败
|
|
Sleep 2s
|
|
|
|
sqlserverCDM恢复_D2D2B
|
|
[Arguments] ${agent_name}
|
|
元素点击 ${CDM_dataProtect} 点击进入副本数据保护页面 定位副本数据保护页面失败
|
|
元素点击 Xpath=//span[text()="${agent_name}"] 选择备份代理 定位备份代理失败
|
|
元素点击 ${CDM_BK} 点击进入备份集恢复界面 定位副本数据按钮失败
|
|
sleep 5s
|
|
元素点击 xpath=//button[@id="backupAction_0"] 点击展开操作 定位备份集操作按钮下拉框失败
|
|
sleep 5s
|
|
元素点击 ${CDM_BK_Recover} 点击恢复操作 定位恢复按钮失败
|
|
sleep 5s
|
|
元素点击 ${Recover_Nextstep_SQLServer} 点击下一步进入实例选择界面 定位下一步按钮失败
|
|
元素点击 ${Recover_Instance_Select_Nextstep} 点击下一步进入目标数据库选择界面 定位下一步按钮失败
|
|
元素点击 ${Recover_Target} 点击勾选恢复的数据库 定位需要恢复的数据库失败
|
|
元素点击 ${Select_DB_Nextstep1} 点击下一步进入高级选项 定位下一步按钮失败
|
|
元素点击 ${Origin_Name_Recover} 点击勾选原名恢复 定位异名恢复按钮失败
|
|
元素输入 ${Recover_xpath} E: 定位恢复指定路径输入框失败
|
|
元素点击 ${Sqlserver_Rec_NextStep_4} 点击进入信息确认界面 定位下一步按钮失败
|
|
元素点击 ${Sqlserver_Rec_Complete} 点击完成按钮,完成复策略创建 定位完成按钮失败
|
|
元素点击 ${Success_Confirm} 确认恢复策略创建完成 定位恢复确认弹窗失败
|
|
元素点击 ${Normal_Tab_Work} 点击切换到作业栏 定位作业栏失败
|
|
Sleep 2s
|
|
${Time_out} Run Keyword And Return Status Wait Until Element Is Visible ${Success_Confirm}
|
|
Run Keyword If ${Time_out}==True 元素点击 ${Success_Confirm} 点击连接超时的失败按钮 定位超时弹窗失败
|
|
副本代理选择 ${CDM_Sqlserver_Des_name}
|
|
Sleep 80s
|
|
Wait Until Element Is Visible ${Recover_Status} 60s 定位恢复状态失败
|
|
Log 恢复成功
|
|
|
|
副本备份集删除加载_d2d2c
|
|
[Arguments] ${agent_name}
|
|
元素点击 ${CDM_dataProtect} 点击进入副本数据保护页面 定位副本数据保护页面失败
|
|
元素点击 Xpath=//span[text()="${agent_name}"] 选择备份代理 定位备份代理失败
|
|
Mouse Out Xpath=//span[text()="${agent_name}"]
|
|
元素点击 ${CDM_BK} 点击进入副本数据备份集页面 定位副本数据备份集页面失败
|
|
Sleep 2s
|
|
循环点击 id=backupAction_${random_strategyName} ${CDM_BK_Del}
|
|
Sleep 2s
|
|
元素点击 ${CDM_BK_Del} 点击删除备份集 定位删除按钮失败
|
|
Sleep 2s
|
|
元素点击 ${Button_Confirm_Del} 点击确定删除备份集 定位确定按钮失败
|
|
元素点击 ${Success_Confirm} 确定完成备份集删除 定位备份集删除确定弹框失败
|
|
Sleep 30s
|
|
元素点击 ${Archive} 点击进入创建归档策略栏 定位左侧创建归档策略栏失败
|
|
元素点击 ${Arched_Bk} 点击切换到已归档备份集一栏 定位已归档备份集失败
|
|
元素输入 ${Input_Arch_PolicyName} ${archive_policy} 定位归档策略输入框失败
|
|
FOR ${n} IN RANGE 10
|
|
元素点击 ${Button_Search_Policy} 点击搜索查询已归档备份集 定位搜索按钮失败
|
|
${jz_status} Run Keyword And Return Status Wait Until Element Is Visible xpath=//tr[1]//div[text()="${random_strategyName}"]/../..//button[text()="加载"]
|
|
Run Keyword If "${jz_status}"=="True" Exit For Loop
|
|
... ELSE Log 加载按钮未出现
|
|
Sleep 35s
|
|
END
|
|
元素点击 ${Button_Search_Policy} 再次点击搜索查询已归档备份集 定位搜索按钮失败
|
|
元素点击 xpath=//tr[1]//div[text()="${random_strategyName}"]/../..//button[text()="加载"] 点击加载备份集 定位备份集加载按钮失败
|
|
元素输入 ${Input_Load_PolicyName} 加载${random_strategyName}备份集 定位加载策略输入框失败
|
|
元素点击 ${Complete_Load_Policy} 点击完成加载策略 定位完成按钮失败
|
|
元素点击 ${Success_Confirm} 确定备份集加载成功 定位备份集加载确定弹框失败
|
|
元素点击 ${Timed_DataProtect} 点击进入定时数据保护页面 定位定时数据保护失败
|
|
元素点击 Xpath=//span[text()="${agent_name}"] 选择备份代理 定位备份代理失败
|
|
Mouse Out Xpath=//span[text()="${agent_name}"]
|
|
元素点击 ${BackupSet} 点击进入备份集一栏 定位备份集栏失败
|
|
Sleep 2s
|
|
|
|
sqlserverCDM恢复_d2d2c
|
|
[Arguments] ${agent_name}
|
|
元素点击 ${CDM_dataProtect} 点击进入副本数据保护页面 定位副本数据保护页面失败
|
|
元素点击 Xpath=//span[text()="${agent_name}"] 选择备份代理 定位备份代理失败
|
|
元素点击 Xpath=//*[@id="cdm_tab_backupset_li"]/span 点击进入备份集恢复界面 定位副本数据按钮失败
|
|
sleep 5s
|
|
元素点击 xpath=//button[@id="backupAction_0"] 点击展开操作 定位备份集操作按钮下拉框失败
|
|
sleep 5s
|
|
元素点击 ${CDM_BK_Recover} 点击恢复操作 定位恢复按钮失败
|
|
sleep 5s
|
|
元素点击 ${Recover_Nextstep_SQLServer} 点击下一步进入实例选择界面 定位下一步按钮失败
|
|
元素点击 ${Recover_Instance_Select_Nextstep} 点击下一步进入目标数据库选择界面 定位下一步按钮失败
|
|
元素点击 ${Recover_Target} 点击勾选恢复的数据库 定位需要恢复的数据库失败
|
|
元素点击 ${Select_DB_Nextstep1} 点击下一步进入高级选项 定位下一步按钮失败
|
|
元素点击 ${Origin_Name_Recover} 点击勾选原名恢复 定位异名恢复按钮失败
|
|
元素输入 ${Recover_xpath} E: 定位恢复指定路径输入框失败
|
|
元素点击 ${Sqlserver_Rec_NextStep_4} 点击进入信息确认界面 定位下一步按钮失败
|
|
元素点击 ${Sqlserver_Rec_Complete} 点击完成按钮,完成复策略创建 定位完成按钮失败
|
|
元素点击 ${Success_Confirm} 确认恢复策略创建完成 定位恢复确认弹窗失败
|
|
元素点击 ${Normal_Tab_Work} 点击切换到作业栏 定位作业栏失败
|
|
Sleep 2s
|
|
${Time_out} Run Keyword And Return Status Wait Until Element Is Visible ${Success_Confirm}
|
|
Run Keyword If ${Time_out}==True 元素点击 ${Success_Confirm} 点击连接超时的失败按钮 定位超时弹窗失败
|
|
副本代理选择 ${CDM_Sqlserver_Des_name}
|
|
Sleep 60s
|
|
Wait Until Element Is Visible ${Recover_Status} 30s 定位恢复状态失败
|
|
Log 恢复成功
|
|
|
|
Sqlserver立即执行_归档
|
|
[Arguments] ${agent_name} ${bk_style} # 代理名称|备份类型
|
|
元素点击 ${CDM_dataProtect} 点击进入副本数据管理页面 定位副本数据管理页面失败
|
|
元素点击 Xpath=//span[text()="${agent_name}"] 选择备份代理 定位备份代理失败
|
|
Mouse Out Xpath=//span[text()="${agent_name}"]
|
|
元素点击 ${Run_Now} 点击立即执行按钮成功 定位立即执行按钮失败
|
|
sleep 2s
|
|
循环点击 ${Now_Run_Type} ${Option_Increbk}
|
|
Run Keyword If "${bk_style}"=="完全" Click Element ${Option_Fullbk}
|
|
... ELSE IF "${bk_style}"=="增量" Click Element ${Option_Increbk}
|
|
元素点击 ${Cycle_Run_Now_Finish} 点击完成按钮成功 定位完成按钮失败
|
|
元素点击 ${Cycle_Restore_Finish_OK} 点击添加成功按钮 定位添加成功按钮失败
|
|
元素点击 ${Select_JobHtml} 点击作业按钮 定位作业界面失败
|
|
log 开始备份
|
|
FOR ${n} IN RANGE 60
|
|
${bk_status} Run Keyword And Return Status Wait Until Element Is Visible xpath=//div[text()="${random_strategyName}"]/../../..//tr[1]//div[text()="成功"]
|
|
Run Keyword If "${bk_status}"=="True" Exit For Loop
|
|
... ELSE Log 备份未完成
|
|
Sleep 30s
|
|
END
|
|
Run Keyword If ${bk_status}==False Fail
|
|
... ELSE Log 备份成功
|
|
Sleep 2s
|
|
|
|
Sqlserver恢复_同步
|
|
[Arguments] ${agent_name}
|
|
元素点击 ${CDM_dataProtect} 点击进入副本数据保护页面 定位副本数据保护页面失败
|
|
Sleep 5s
|
|
元素点击 Xpath=//span[text()="${agent_name}"] 选择备份代理 定位备份代理失败
|
|
Sleep 2s
|
|
${Backup_Recover}= catenate SEPARATOR=_ cdmPolicy_recovery ${random_strategyName}
|
|
元素点击 ${Backup_Recover} 点击恢复进入备份集恢复界面 定位恢复按钮失败
|
|
Sleep 5s
|
|
${Backup_Act}= catenate SEPARATOR=_ backupAction ${random_strategyName}
|
|
${Backup_Rec}= catenate SEPARATOR=_ cdmBkset_recovery ${random_strategyName}
|
|
循环点击 ${Backup_Act} ${Backup_Rec}
|
|
元素点击 ${Backup_Rec} 点击恢复按钮 定位恢复按钮失败
|
|
元素输入 ${Input_Sync_Name} ${Sys_Admin} 定位鉴权用户名输入框失败
|
|
元素输入 ${Input_Sync_Pwd} ${WebPWD} 定位鉴权密码输入框失败
|
|
元素点击 ${Sync_Confirm} 点击确定完成鉴权 定位鉴权确定按钮失败
|
|
元素点击 ${Sqlserver_Select_Agent} 点击展开恢复代理 定位展开恢复代理失败
|
|
元素点击 xpath=//dd[contains(text(),'${CDM_Sqlserver_Des_name}')] 选择目标端代理 定位目标端代理失败
|
|
元素点击 ${Sqlserver_Rec_NextStep_1} 点击下一步进入实例选择界面 定位下一步按钮失败
|
|
元素点击 ${Sqlserver_Rec_NextStep_2} 点击下一步进入目标数据库选择界面 定位下一步按钮失败
|
|
元素点击 ${Recover_Target} 点击勾选恢复的数据库 定位需要恢复的数据库失败
|
|
元素点击 ${Sqlserver_Rec_NextStep_3} 点击下一步进入高级选项 定位下一步按钮失败
|
|
元素点击 ${Origin_Name_Recover} 点击勾选原名恢复 定位异名恢复按钮失败
|
|
元素输入 ${Recover_xpath} E: 定位恢复指定路径输入框失败
|
|
元素点击 ${Sqlserver_Rec_Complete} 点击完成按钮,完成恢复策略创建 定位完成按钮失败
|
|
元素点击 ${confirm_restore} 点击确定恢复 定位恢复确定按钮失败
|
|
元素点击 ${Success_Confirm} 确认恢复策略创建完成 定位恢复确认弹窗失败
|
|
元素点击 ${Normal_Tab_Work} 点击切换到作业栏 定位作业栏失败
|
|
Sleep 2s
|
|
${Time_out} Run Keyword And Return Status Wait Until Element Is Visible ${Success_Confirm}
|
|
Run Keyword If ${Time_out}==True 元素点击 ${Success_Confirm} 点击连接超时的失败按钮 定位超时弹窗失败
|
|
副本代理选择 ${CDM_Sqlserver_Des_name}
|
|
Sleep 120s
|
|
Wait Until Element Is Visible ${Recover_Status} 30s 定位恢复状态失败
|
|
Log 恢复成功
|
|
|
|
SQLserver_cdm策略清理
|
|
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}==False log 无残留策略
|
|
... ELSE 策略删除_SQLserverCDM
|
|
sleep 5s
|
|
END
|
|
Log 环境清理完毕
|
|
|
|
策略删除_SQLserverCDM
|
|
循环点击 ${SQLserver_Policy_Delete} ${SQLserver_Policy_Delete_Confirm}
|
|
元素点击 ${SQLserver_Policy_Delete_Confirm} 点击确认删除成功 定位确认按钮失败
|
|
元素点击 ${Delete_succeeded_OK} 点击删除成功 定位删除成功按钮失败
|
|
|
|
windows身份验证
|
|
元素点击 ${Button_RecoveryIdentifyVarification_CDM} 点击身份验证下拉框成功 点击身份验证下拉框失败
|
|
元素点击 ${Add_Policy_NextStep} 点击进入下一步实例选择页面 定位下一步按钮失败
|
|
|
|
SQLserver身份验证
|
|
元素点击 ${SQLServer_down} 身份验证下拉框 定位身份验证下拉框失败
|
|
元素点击 ${SQLServer_Shenfen} 选择SQL身份验证 定位SQL身份验证失败
|
|
元素点击 ${Sqlserver_CDM_NextStep_1} 点击进入下一步实例选择页面 定位下一步按钮失败
|
|
元素输入 ${SQLServer_Pwd} ${CDM_MSSql_DB_PWD1} 定位密码输入框失败
|
|
|
|
插入SQLserver数据
|
|
[Arguments] ${tablename} ${hostip} ${SQLServer_passwd}
|
|
log 连接数据库
|
|
Connect To Database Using Custom Params pymssql host='${hostip}',user='${CDM_MSSql_DB_User}',password='${SQLServer_passwd}',database='${CDM_MSSql_DB}'
|
|
log 插入数据表
|
|
log 插入数据
|
|
Execute Sql String insert into ${tablename} select * from ${tablename}
|
|
log 获取行数
|
|
${out}= Row Count select * from ${tablename}
|
|
Set Suite Variable ${out}
|
|
log ${out}
|
|
Disconnect From Database
|
|
Log 断开数据库连接
|
|
|
|
Sqlserver备份_归档
|
|
[Arguments] ${agent_name} ${bk_type} ${mds_name} ${pipelineEncryption} ${pipelineCompress} ${pipelineDedup}
|
|
代理策略预清理 ${agent_name}
|
|
元素点击 ${CDM_dataProtect} 点击进入副本数据保护页面 定位副本数据保护页面失败
|
|
元素点击 Xpath=//span[text()="${agent_name}"] 选择备份代理 定位备份代理失败
|
|
Mouse Out Xpath=//span[text()="${agent_name}"]
|
|
元素点击 ${Add_Sqlserver_Policy} 点击添加策略按钮 定位策略添加按钮失败
|
|
元素点击 ${SQLServer_CDM_Module} 选择sqlserver数据模块 定位sqlserver模块失败
|
|
${date} Evaluate time.strftime('%Y%m%d%H%M%S',time.localtime()) time
|
|
${random_strategyName}= Catenate SEPARATOR=_ ${bk_type} ${date}
|
|
Set Suite Variable ${random_strategyName}
|
|
Log 切换为全局变量
|
|
Sleep 5s
|
|
元素输入 ${Policy_Name} ${random_strategyName} 定位策略名输入框失败
|
|
元素点击 ${Add_Policy_NextStep} 点击进入下一步实例选择页面 定位下一步按钮失败
|
|
元素点击 ${Instance_Nextstep} 点击进入下一步目标数据库选择页面 定位下一步按钮失败
|
|
元素点击 ${Select_Bk_DB} 勾选指定数据库 定位指定数据库勾选框失败
|
|
元素点击 ${Select_DB_Nextstep} 点击下一步进入任务周期选择界面 定位下一步按钮失败
|
|
元素点击 ${AddTaskCycle} 点击添加任务周期 添加任务周期定位失败
|
|
Run Keyword If "${bk_type}"=="完全" KeyWord_Sqlserver.完全备份
|
|
... ELSE IF "${bk_type}"=="增量" KeyWord_Sqlserver.增量备份
|
|
元素点击 ${Cycle_Onetime} 选择仅备份一次 定位一次循环模式定位失败
|
|
元素点击 ${Cycle_Confirm} 点击确认完成任务周期设置 任务周期确定定位失败
|
|
元素点击 ${Cycle_Nextstep} 点击下一步进入备份集存储页面 任务周期下一步定位失败
|
|
元素点击 ${Input_Choose_MDS} 选择手动指定MDS介质 定位手动选择MDS介质选项失败
|
|
元素点击 ${Select_MDS_CDM} 点击展开介质选项下拉框 定位介质下拉框失败
|
|
元素点击 xpath=//select[@id="dialogues_addCycleStorage_storagePath_selectMedia_selectedMdsIP_select"]/option[@label="${mds_name}"] 点击选择指定介质 定位指定介质失败
|
|
元素点击 ${Storage_Nextstep} 点击下一步进入到备份高级选项页面 定位下一步按钮失败
|
|
Run Keyword If ${pipelineEncryption}==1 管道加密
|
|
Run Keyword If ${pipelineCompress}==1 管道压缩
|
|
Run Keyword If ${pipelineDedup}==1 管道重删
|
|
comment 元素点击 ${CDM_Sqlserver_NextStep_6} 点击进入到信息确认界面 定位备份高级选项下一步失败
|
|
comment 元素点击 ${Complete_Add_Policy} 点击完成策略创建 定位策略完成失败
|
|
元素点击 ${Btn_Finish_Sqlserver} 点击完成策略创建 定位策略完成失败
|
|
Sleep 2s
|
|
元素点击 ${Success_Confirm} 策略确定创建完毕 定位策略创建成功弹窗失败
|
|
FOR ${n} IN RANGE 10
|
|
${bk_status} Run Keyword And Return Status Wait Until Element Is Visible Xpath=//td[text()="${random_strategyName}"]/../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 60s
|
|
|
|
Sqlserver备份_限速
|
|
[Arguments] ${agent_name} ${mds_name} ${bk_speed} ${SQLserver_CheckType}=SQLserver
|
|
代理策略预清理 ${agent_name}
|
|
元素点击 ${CDM_dataProtect} 点击进入副本数据保护页面 定位副本数据保护页面失败
|
|
元素点击 Xpath=//span[text()="${agent_name}"] 选择备份代理 定位备份代理失败
|
|
Mouse Out Xpath=//span[text()="${agent_name}"]
|
|
元素点击 ${Add_Sqlserver_Policy} 点击添加策略按钮 定位策略添加按钮失败
|
|
元素点击 ${SQLServer_CDM_Module} 选择sqlserver数据模块 定位sqlserver模块失败
|
|
${date} Evaluate time.strftime('%Y%m%d%H%M%S',time.localtime()) time
|
|
${random_strategyName}= Catenate SEPARATOR=_ Sqlserver_CDM ${date}
|
|
Set Suite Variable ${random_strategyName}
|
|
Log 切换为全局变量
|
|
Sleep 5s
|
|
元素输入 ${Policy_Name} ${random_strategyName} 定位策略名输入框失败
|
|
Run Keyword If "${SQLserver_CheckType}"=="Windows" windows身份验证
|
|
... ELSE IF "${SQLserver_CheckType}"=="SQLserver" SQLserver身份验证
|
|
元素点击 ${Sqlserver_CDM_NextStep_2} 点击下一步进入目标数据库界面 定位实例选择下一步按钮失败
|
|
元素点击 ${Select_Bk_DB} 勾选指定数据库 定位指定数据库勾选框失败
|
|
元素点击 ${Sqlserver_CDM_NextStep_3} 点击下一步进入任务周期界面 定位目标数据库下一步按钮失败
|
|
元素点击 ${AddTaskCycle} 点击添加任务周期 添加任务周期定位失败
|
|
元素点击 ${Cycle_Onetime} 选择仅备份一次 定位一次循环模式定位失败
|
|
元素点击 ${Cycle_Confirm} 点击确认完成任务周期设置 任务周期确定定位失败
|
|
元素点击 ${Sqlserver_CDM_NextStep_4} 点击下一步进入备份集存储页面 定位任务周期下一步定位失败
|
|
元素点击 ${Input_Choose_MDS} 选择手动指定MDS介质 定位手动选择MDS介质选项失败
|
|
元素点击 ${Select_MDS_CDM} 点击展开介质选项下拉框 定位介质下拉框失败
|
|
元素点击 xpath=//select[@id="dialogues_addCycleStorage_storagePath_selectMedia_selectedMdsIP_select"]/option[text()="${mds_name}"] 点击选择指定介质 定位指定介质失败
|
|
元素点击 ${Sqlserver_CDM_NextStep_5} 点击下一步进入到备份高级选项页面 定位下一步按钮失败
|
|
元素点击 ${CDM_Speed_Control} 点击创建限速策略 定位创建限速策略失败
|
|
元素输入 ${CDM_Input_Speed} ${bk_speed} 定位限速输入框失败
|
|
元素点击 ${Btn_Finish_Sqlserver} 点击完成策略创建 定位策略完成失败
|
|
Sleep 2s
|
|
元素点击 ${Success_Confirm} 策略确定创建完毕 定位策略创建成功弹窗失败
|
|
Sleep 30s
|
|
|
|
Sqlserver恢复_限速
|
|
[Arguments] ${agent_name} ${recover_speed}
|
|
FOR ${n} IN RANGE 10
|
|
${bk_status} Run Keyword And Return Status Wait Until Element Is Visible Xpath=//td[text()="${random_strategyName}"]/../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 2s
|
|
元素点击 ${CDM_dataProtect} 点击进入副本数据保护页面 定位副本数据保护页面失败
|
|
Sleep 5s
|
|
元素点击 Xpath=//span[text()="${agent_name}"] 选择备份代理 定位备份代理失败
|
|
Sleep 2s
|
|
元素点击 xpath=//td[text()="${random_strategyName}"]/..//span[text()="恢复"] 点击恢复进入备份集恢复界面 定位恢复按钮失败
|
|
Sleep 5s
|
|
comment 元素点击 xpath=//button[@id="backupAction_0"] 点击展开操作 定位备份集操作按钮下拉框失败
|
|
元素点击 xpath=//div[text()="${random_strategyName}"]/../..//button 点击展开操作 定位备份集操作按钮下拉框失败
|
|
元素点击 ${CDM_BK_Recover} 点击恢复操作 定位恢复按钮失败
|
|
元素点击 ${Sqlserver_Select_Agent} 点击展开恢复代理 定位展开恢复代理失败
|
|
元素点击 xpath=//dd[contains(text(),"${agent_name}")] 选择目标端代理 定位目标端代理失败
|
|
元素点击 ${Sqlserver_Rec_NextStep_1} 点击下一步进入实例选择界面 定位下一步按钮失败
|
|
元素点击 ${Sqlserver_Rec_NextStep_2} 点击下一步进入目标数据库选择界面 定位下一步按钮失败
|
|
元素点击 ${Recover_Target} 点击勾选恢复的数据库 定位需要恢复的数据库失败
|
|
元素点击 ${Sqlserver_Rec_NextStep_3} 点击下一步进入高级选项 定位下一步按钮失败
|
|
元素点击 ${Origin_Name_Recover} 点击勾选原名恢复 定位异名恢复按钮失败
|
|
元素输入 ${Recover_xpath} E: 定位恢复指定路径输入框失败
|
|
元素点击 ${Sqlserver_Rec_Complete} 点击完成按钮 定位完成按钮失败
|
|
元素点击 ${Btn_Second_Define} 二次确认执行恢复操作 定位确认恢复按钮失败
|
|
元素点击 ${Success_Confirm} 恢复策略添加成功 定位恢复策略添加成功弹窗的确认按钮失败
|
|
|
|
Sqlserver备份集校验_限速
|
|
[Arguments] ${agent_name}
|
|
元素点击 ${Normal_Tab_Work} 点击切换到作业栏 定位作业栏失败
|
|
Sleep 2s
|
|
${Time_out} Run Keyword And Return Status Wait Until Element Is Visible ${Success_Confirm}
|
|
Run Keyword If ${Time_out}==True 元素点击 ${Success_Confirm} 点击连接超时的失败按钮 定位超时弹窗失败
|
|
副本代理选择 ${agent_name}
|
|
Sleep 60s
|
|
Wait Until Element Is Visible ${Recover_Status} 30s 定位恢复状态失败
|
|
Log 恢复成功
|