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

342 lines
18 KiB
Plaintext
Raw Normal View History

2023-12-14 03:19:52 +00:00
*** Settings ***
Library Selenium2Library
Library DatabaseLibrary
Library SSHLibrary
Resource ElementPath.robot
Resource ../RE0_Common/KeyWord.robot
*** Keywords ***
Sybase建表
[Arguments] ${Sybase_Host_IP} ${Sybase_user} ${Sybase_Pwd} # 代理IP、数据库用户、数据库密码
Sybase删表 ${Sybase_Host_IP} ${Sybase_user} ${Sybase_Pwd}
Open Connection ${Sybase_Host_IP} 22
log 用户登录远程测试机器
SSHLibrary.Login ${Sybase_user} ${Sybase_Pwd}
Execute Command ./sybase.sh create
Execute Command ./sybase.sh insert
Execute Command ./sybase.sh query > out
Execute Command head -n 1 out > 2
${out}= Execute Command cat 2
${out2}= Evaluate ("${out}".split("("))[0]
${out3}= Evaluate ("${out2}".split("-"))[-1]
Close Connection
Set Suite Variable ${out3}
Sybase删表
[Arguments] ${Sybase_Host_IP} ${Sybase_user} ${Sybase_Pwd} # 代理IP、数据库用户、数据库密码
Open Connection ${Sybase_Host_IP} 22
log 用户登录远程测试机器
SSHLibrary.Login ${Sybase_user} ${Sybase_Pwd}
log 执行脚本和sql语句
${out}= Execute Command ./sybase.sh drop
Close Connection
Sybase插数据
[Arguments] ${Sybase_Host_IP} ${Sybase_user} ${Sybase_Pwd} # 代理IP、数据库用户、数据库密码
Open Connection ${Sybase_Host_IP} 22
log 用户登录远程测试机器
SSHLibrary.Login ${Sybase_user} ${Sybase_Pwd}
log 执行脚本和sql语句
Execute Command ./sybase.sh insert
Comment ${out}= Execute Command ./sybase.sh query
Execute Command ./sybase.sh query >out
Execute Command head -n 1 out > 2
${out}= Execute Command cat 2
${out2}= Evaluate ("${out}".split("("))[0]
${out3}= Evaluate ("${out2}".split("-"))[-1]
Set Suite Variable ${out3}
Sleep 5s
Close Connection
Comment re.split('\(','${out}')
Sybase数据校验
[Arguments] ${Sybase_Host_IP} ${Sybase_user} ${Sybase_Pwd} # 代理IP、数据库用户、数据库密码
Open Connection ${Sybase_Host_IP} 22
log 用户登录远程测试机器
SSHLibrary.Login ${Sybase_user} ${Sybase_Pwd}
log 执行数据校验
Execute Command ./sybase.sh query > out
Execute Command head -n 1 out > 2
${test1}= Execute Command cat 2
${test2}= Evaluate ("${test1}".split("("))[0]
${out_num}= Evaluate ("${test2}".split("-"))[-1]
log ${out_num}
Run Keyword If "${out_num}"=="${out3}" log 数据校验一致,恢复成功
... ELSE log 数据校验不一致,恢复失败
Comment Element should contain ${out_num} ${out3}
log 校验完成
拷贝脚本
[Arguments] ${Sybase_Host_IP} ${Sybase_user} ${Sybase_Pwd} # 代理IP、数据库用户、数据库密码
Open Connection ${Sybase_Host_IP} 22
log 用户登录远程测试机器
SSHLibrary.Login ${Sybase_user} ${Sybase_Pwd}
log 将脚本拷贝到代理机器
SSHLibrary.Put Directory ${Scripts_Path}${/}Sybase /home/sybase
Close Connection
Sybase备份
[Arguments] ${agent_name} ${Sybase_engine_name} ${Sybase_bk_user} ${Sybase_Pwd} ${mds_name} ${encryption_attr} ${compress_attr} ${dedup_attr} ${Sybase_cache} # 代理名称,引擎名,备份用户,密码,介质名称,加密,压缩,重删,缓存
元素点击 ${Timed_DataProtect} 点击进入定时数据保护页面 定位定时数据保护失败
${date} Evaluate time.strftime('%Y%m%d%H%M%S',time.localtime()) time
${random_strategyName}= Catenate SEPARATOR=_ Sybase ${date}
${createpolicy} Catenate SEPARATOR= 新建了策略[ ${random_strategyName} ]
Set Suite Variable ${random_strategyName}
Set Suite Variable ${createpolicy}
Sleep 5s
元素点击 xpath=//span[text()="${agent_name}"] 点击选择代理 定位代理所在位置失败
元素点击 ${BackupSet} 点击进入备份集页面 定位备份集按钮失败
元素点击 ${dpm_Protection strategy} 点击进入保护策略页面 定位保护策略按钮失败
元素点击 ${Add_Policy} 点击添加策略按钮 定位添加策略按钮失败
元素点击 ${Sybase_source} 点击Sybase组件 定位Sybase组件失败
元素输入 ${Input_celuename} ${random_strategyName} 定位策略名输入框失败
元素输入 ${Sybase_engine} ${Sybase_engine_name} 定位引擎名输入框失败
元素输入 ${Input_Sybase_user} ${Sybase_bk_user} 定位用户名输入框失败
元素输入 ${Input_Sybase_pwd} ${Sybase_Pwd} 定位密码输入框失败
Sleep 10s
元素点击 ${Connection credentials_Next} 进入到目标数据库选择界面 定位下一步按钮失败
Sleep 10s
元素点击 ${Sybase_select} 选择数据库test 数据库test定位失败
元素点击 ${Target_database_Next_MongoDB} 进入到任务周期页面 定位下一步按钮失败
元素点击 ${Add_taskcycle} 点击添加任务周期 定位添加任务周期按钮失败
元素点击 ${Full_Backup} 勾选完全备份 定位完全备份元素失败
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}"] 点击选择指定介质 定位指定介质失败
Run Keyword If ${dedup_attr}==1 重删
... ELSE log 不重删
元素点击 ${Storage_NextStep} 点击下一步进入到备份高级选项 定位下一步失败
log 进入备份高级选项
Run Keyword If ${encryption_attr}==1 加密
... ELSE log 不加密
Run Keyword If ${compress_attr}==1 压缩
... ELSE log 不压缩
Run Keyword If ${Sybase_cache}==1 备份缓存
... ELSE IF ${Sybase_cache}==0 备份取消缓存
sleep 2s
循环点击 ${PG_Complete_CreatePolicy} ${Success_Confirm}
元素点击 ${Success_Confirm} 确定策略创建成功 策略创建失败
元素点击 ${BackupSet} 点击进入备份集一栏 定位备份集栏失败
元素输入 ${DPMFind_Policy} ${random_strategyName} 定位策略名搜索框失败
元素点击 ${DPMButton_Searchbutton} 点击查找筛选策略 定位查找按钮失败
Sleep 60s
Wait Until Page Contains Element ${Click_recover} 300s 备份未完成
Log 备份完成
Sybase恢复
[Arguments] ${Sybase_engine_name} ${Sybase_bk_user} ${Sybase_Pwd} ${Sybase_cache} # 引擎名,备份用户,密码,缓存
sleep 5s
循环点击 ${BackupSet} ${Click_recover}
元素点击 ${Click_recover} 选择备份集进行恢复 定位恢复按钮失败
Sleep 10s
元素输入 ${Sybase_engine_recovery} ${Sybase_engine_name} 定位引擎名输入框失败
元素输入 ${Sybase_rec_user} ${Sybase_bk_user} 定位用户名输入框失败
元素输入 ${Input_Sybase_rec_pwd} ${Sybase_Pwd} 定位密码输入框失败
Sleep 10s
元素点击 ${Recover_Nextstep_Mongodb} 恢复策略下一步成功 定位恢复下一步按键失败
Run Keyword If ${Sybase_cache}==1 恢复缓存
... ELSE Log 不勾选缓存
Sleep 10s
元素点击 ${Recover_DM} 确认执行恢复策略 定位确认恢复失败
循环点击 ${Confirm_Recovery} ${Success_Confirm}
元素点击 ${Success_Confirm} 恢复策略确定创建成功 恢复作业创建成功弹窗定位失败
元素点击 ${Policy_Work} 点击进入作业栏 定位作业栏失败
元素输入 ${Input_All_Policy} 恢复策略 定位所有策略输入框失败
元素点击 ${Search_By_Policy} 点击查找筛选恢复策略 定位查找按钮失败
Sleep 60s
Wait Until Page Contains Element ${Recover_Success} 300s 恢复失败
sleep 2s
Log 恢复成功
增量备份
Sleep 2s
Click Element ${Complie_incre_Sybase}
Log 勾选增量备份
备份缓存
元素点击 ${Sybase_change_cache} 更改缓存路径 定位更改缓存路径选项失败
元素输入 ${Cache_Path} /opt 定位缓存路径输入框失败
元素点击 ${Fin_CachePath} 缓存路径设置完毕 定位缓存路径设置确定按钮失败
恢复缓存
元素点击 ${Recover_Cache} 勾选缓存 定位缓存选项失败
元素输入 ${Recover_CachePath} /opt 定位缓存路径输入框失败
元素点击 ${Fin_Recover_CachePath} 缓存路径设置完毕 定位缓存路径设置确定按钮失败
立即执行策略
[Arguments] ${Sybase_type}
元素点击 ${dpm_Protection strategy} 点击进入定时保护策略一栏 定位保护策略栏失败
元素点击 ${Complie_execute} 点击策略立即执行按钮 定位立即执行元素失败
元素点击 ${Select_Srctype} 点击选择备份类型按钮 定位选择备份类型元素失败
Run Keyword If "${Sybase_type}"=="增量" 增量备份
... ELSE IF Log 此次备份不为增量备份
元素点击 ${ExecutePolicy_execute} 点击完成按钮 定位完成元素失败
元素点击 ${Complie_confirm} 点击确定按钮 定位确定按钮失败
元素点击 ${BackupSet} 点击进入备份集一栏 定位备份集栏失败
元素输入 ${DPMFind_Policy} ${random_strategyName} 定位策略名搜索框失败
元素点击 ${DPMButton_Searchbutton} 点击查找筛选策略 定位查找按钮失败
Sleep 120s
Wait Until Page Contains Element ${Click_recover} 300s 备份未完成
Log 备份完成
win_备份缓存
元素点击 ${Sybase_change_cache} 更改缓存路径 定位更改缓存路径选项失败
元素输入 ${Cache_Path} C:\ 定位缓存路径输入框失败
元素点击 ${Fin_CachePath} 缓存路径设置完毕 定位缓存路径设置确定按钮失败
win_恢复缓存
元素点击 ${Recover_Cache} 勾选缓存 定位缓存选项失败
元素输入 ${Rcache_Path} C:\ 定位缓存路径输入框失败
元素点击 ${Fin_Recover_CachePath} 缓存路径设置完毕 定位缓存路径设置确定按钮失败
win_Sybase备份
[Arguments] ${win_Sybase_cache} ${agent_name}
元素点击 ${dpm_date_protection} 点击进入定时数据保护页面 定位定时数据保护失败
${date} Evaluate time.strftime('%Y%m%d%H%M%S',time.localtime()) time
${random_strategyName}= Catenate SEPARATOR= ${date}
${createpolicy} Catenate SEPARATOR= 新建了策略[ ${random_strategyName} ]
Set Suite Variable ${random_strategyName}
Set Suite Variable ${createpolicy}
Sleep 5s
元素点击 xpath=//span[text()="${agent_name}"] 点击选择代理 定位代理所在位置失败
元素点击 ${Add_Policy} 点击添加策略按钮 定位添加策略按钮失败
元素点击 ${Sybase_source} 点击Sybase组件 定位Sybase组件失败
元素输入 ${Input_celuename} ${random_strategyName} 定位策略名输入框失败
元素输入 ${Sybase_engine} ${Sybase_engine_name} 定位引擎名输入框失败
元素输入 ${Input_Sybase_user} ${Sybase_bk_user} 定位用户名输入框失败
元素输入 ${Input_Sybase_pwd} ${win_Sybase_Pwd} 定位密码输入框失败
Sleep 10s
元素点击 ${Connection credentials_Next} 进入到目标数据库选择界面 定位下一步按钮失败
Sleep 10s
元素点击 ${win_Sybase_select} 选择数据库test1 数据库test定位失败
元素点击 ${Target_database_Next} 进入到任务周期页面 定位下一步按钮失败
元素点击 ${Add_taskcycle} 点击添加任务周期 定位添加任务周期按钮失败
元素点击 ${Full_Backup} 勾选完全备份 定位完全备份元素失败
Sleep 2s
元素点击 ${Cycle_Once} 设置任务仅执行一次 定位仅执行一次失败
元素点击 ${Cycle_Confirm} 确定任务周期设置完毕 定位任务周期设置失败
元素点击 ${Cycle_NextStep} 点击下一步进入备份集存储设置界面 定位下一步失败
元素点击 ${Manual_ChooseMDS} 点击勾选手动选择介质 定位选择介质失败
元素点击 ${Select_MDS} 点击介质选择按钮 定位介质选择按钮失败
元素点击 xpath=//option[@label="${mds_name}"] 点击选择指定介质 定位指定介质失败
元素点击 ${Storage_NextStep} 点击下一步进入到备份高级选项 定位下一步失败
log 进入备份高级选项
元素点击 ${Type_encrypt} 加密 定位加密失败
#元素点击 ${Type_compress} 压缩 定位压缩失败 Log
Log 压缩默认勾选,做注释处理
元素点击 ${Type_dedup} 重删 定位重删失败
Run Keyword If ${win_Sybase_cache}==1 win_备份缓存
... ELSE 元素点击 ${Active_Cache} 取消勾选缓存选项 定位取消缓存选项失败
Comment 元素点击 ${Complete_CreatePolicy} 点击确定按钮完成策略创建 定位确定按钮失败
sleep 3s
循环点击 ${Complete_CreatePolicy} ${Success_Confirm}
sleep 3s
元素点击 ${Success_Confirm} 确定策略创建成功 策略创建失败
元素点击 ${BackupSet} 点击进入备份集一栏 定位备份集栏失败
Sleep 120s
Wait Until Page Contains Element Xpath=//*[@id="compileBackupRecId0"][text()="恢复"] 300s 备份未完成
Log 备份完成
win_Sybase恢复
[Arguments] ${win_Sybase_cache}
Sleep 5s
元素点击 ${sybase_find} 点击查找成功 点击查找失败
Sleep 5s
元素点击 Xpath=//*[@id="compileBackupRecId0"][text()="恢复"] 选择备份集进行恢复 定位恢复按钮失败
元素输入 ${Sybase_engine_recovery} ${Sybase_engine_name} 定位引擎名输入框失败
元素输入 ${Sybase_rec_user} ${Sybase_bk_user} 定位用户名输入框失败
元素输入 ${Input_Sybase_rec_pwd} ${win_Sybase_Pwd} 定位密码输入框失败
Sleep 10s
元素点击 ${Recover_Nextstep} 恢复策略下一步成功 定位恢复下一步按键失败
Run Keyword If ${win_Sybase_cache}==1 win_恢复缓存
... ELSE Log 不勾选缓存
Sleep 10s
Comment 元素点击 ${Recovery_Gbase8t} 确定完成恢复策略创建 恢复执行定位失败
循环点击 ${Recovery_Gbase8t} ${Success_Confirm}
sleep 3s
元素点击 ${Success_Confirm} 恢复策略确定创建成功 恢复作业创建成功弹窗定位失败
sleep 3s
元素点击 ${Policy_Work} 点击进入作业栏 定位作业栏失败
元素点击 ${work_type_select} 点击所有类型下拉框 所有类型下拉框定位失败
元素点击 ${select_recover} 选择恢复类型 恢复类型选择失败
Sleep 60s
Wait Until Page Contains Element ${Recover_Success} 300s 恢复失败
sleep 2s
Log 恢复成功
win_Sybase建表
Open Connection ${win_Sybase_Host_IP} port=23
Login ${win_Sybase_user} win_Sybase_Pwd
win_Sybase删表
win_Sybase插数据
win_Sybase查询
加密
Sleep 2s
元素点击 ${Type_encrypt} 勾选加密 定位选项选项失败
Sleep 2s
压缩
Sleep 2s
元素点击 ${Type_compress} 勾选压缩 定位压缩选项失败
Sleep 2s
重删
Sleep 2s
元素点击 ${Type_dedup} 勾选重删 定位重删选项失败
Log 点击重删
Sleep 2s
取消压缩
Sleep 2s
元素点击 ${Type_compress} 取消勾选压缩 定位选项选项失败
Sleep 2s
备份取消缓存
Sleep 2s
元素点击 ${Active_Cache} 取消勾选缓存 定位选项选项失败
Sleep 2s
备份集属性校验
[Arguments] ${encryption} ${compress} ${deduped} ${cache} # 加密、压缩、重删、缓存
sleep 5s
循环点击 ${BackupSet} ${Detail}
sleep 5s
元素点击 ${Detail} 点击进入备份集详情 定位备份集详情失败
Sleep 5s
加密属性校验 ${encryption}
压缩属性校验 ${compress}
重删属性校验 ${deduped}
缓存属性校验 ${cache}
Sleep 5s
元素点击 ${Attr_Cancel} 点击取消关闭备份集详情弹窗 定位取消按钮失败
Log 备份集属性确认完毕
Sleep 2s
加密属性校验
[Arguments] ${encryption}
Element Text Should Be ${Encryption_Attr} ${encryption}
Log 加密属性校验完毕
压缩属性校验
[Arguments] ${compress}
Element Text Should Be ${Compress_Attr} ${compress}
Log 压缩属性校验完毕
重删属性校验
[Arguments] ${deduped}
Element Text Should Be ${Dedup_Confirm} ${deduped}
Log 重删属性校验完毕
缓存属性校验
[Arguments] ${cache}
Element Text Should Be ${Cache_Attr} ${cache}
Log 缓存属性校验完毕