This repository has been archived on 2025-09-14. You can view files and clone it, but cannot push or open issues or pull requests.
Files
dongxiaoyan-tsg-autotest/02-Keyword/tsg_ui/administration/Administration.robot

598 lines
33 KiB
Plaintext
Raw Normal View History

*** Settings ***
Library Selenium2Library
Resource ../Menu.robot
Library Collections
Library ../../../04-CustomLibrary/Custometest/StringManipulation.py
Resource ../../../03-Variable/bifangapivariable.txt
Library DatabaseLibrary
*** Keywords ***
System
[Arguments] ${SecondaryMenu}
[Documentation]
... ${SecondaryMenu}:二级菜单
click element id=VSidebar1_Home1_App0_anonymousComponent-1_System
sleep ${sleep_min}
click element id=${SecondaryMenu}
sleep ${sleep_min}
UserCreatePage
[Arguments] ${name} ${username} ${accPasswd} ${Required_Password_Change} ${day} ${accEnable} ${Language} ${page} ${role}
System VSidebar1_Home1_App0_anonymousComponent-1_system_accounts/system_UserManagement
Wait Until Element Is Enabled id=userAdd 10
Click element id=userAdd
sleep ${sleep}
input text xpath=//*[@id="app"]/div/div[3]/div[2]/div/div[1]/div[2]/form/div[1]/label[contains(text(), "Name")]/following-sibling::div/div/input ${name}
sleep ${sleep_min}
input text xpath=//*[@id="app"]/div/div[3]/div[2]/div/div[1]/div[2]/form/div[2]/div/div[1]/input ${username}
sleep ${sleep_min}
input text xpath=//*[@id="app"]/div/div[3]/div[2]/div/div[1]/div[2]/form/div[3]/div/div/input ${accPasswd}
sleep ${sleep_min}
input text xpath=//*[@id="app"]/div/div[3]/div[2]/div/div[1]/div[2]/form/div[4]/div/div/input ${accPasswd}
sleep ${sleep_min}
run keyword if "${accEnable}"=="close" run keywords click element xpath=//*[@id="app"]/div/div[3]/div[2]/div/div[1]/div[2]/form/div[6]/div/div
... AND sleep ${sleep_min}
... ELSE log 不操作
sleep ${sleep_min}
run keyword if "${Required_Password_Change}"=="open" Run Keywords click element xpath=//*[@id="app"]/div/div[3]/div[2]/div/div[1]/div[2]/form/div[5]/div/div
... AND sleep ${sleep_min}
... AND input text xpath=//*[@id="app"]/div/div[3]/div[2]/div/div[1]/div[2]/form/div[6]/div/div/input ${day}
... ELSE log 不开启密码过期验证
click element xpath=//*[@id="app"]/div/div[3]/div[2]/div/div[1]/div[2]/form/div[7]/div/div/div/span/span/i
sleep ${sleep_min}
click element xpath=/html/body/div[2]/div[1]/div[1]/ul/li/span[contains(text(), "${Language}")]
sleep ${sleep_min}
click element xpath=//*[@id="app"]/div/div[3]/div[2]/div/div[1]/div[2]/form/div[8]/div/div/div/span/span/i
sleep ${sleep_min}
click element xpath=/html/body/div[3]/div[1]/div[1]/ul/li/span[contains(text(),"${page}")]
sleep ${sleep_min}
Click element xpath=//*[@id="app"]/div/div[3]/div[2]/div/div[1]/div[2]/form/div[10]/div/div/div[1]/span/span/i
sleep ${sleep_min}
Execute Javascript window.scrollTo(0, document.body.scrollHeight)
sleep ${sleep_min}
click element //span[.="${role}"]
sleep ${sleep_min}
click element xpath=/html/body/div[1]/div/div[3]/div[2]/div/div[2]/button[1]
Wait Until Element Is Enabled id=userAdd ${sleep_Wait}
UserCreatePageErrorVerification
[Arguments] ${name} ${username} ${accPasswd} ${Required_Password_Change} ${day} ${accEnable} ${role}
Menu administration Accounts
Wait Until Element Is Enabled id=userAdd 10
Click element id=userAdd
sleep ${sleep}
input text xpath=//*[@id="app"]/div/div[3]/div[2]/div/div[1]/div[2]/form/div[2]/div/div[1]/input ${name}
sleep ${sleep_min}
input text xpath=//*[@id="app"]/div/div[3]/div[2]/div/div[1]/div[2]/form/div[3]/div/div/input ${username}
sleep ${sleep_min}
input text xpath=//*[@id="app"]/div/div[3]/div[2]/div/div/div[1]/div[2]/form/div[3]/div/div/input ${accPasswd}
sleep ${sleep_min}
input text xpath=//*[@id="app"]/div/div[3]/div[2]/div/div[1]/div[2]/form/div[4]/div/div/input ${accPasswd}
sleep ${sleep_min}
run keyword if "${accEnable}"=="close" run keywords click element xpath=//*[@id="app"]/div/div[3]/div[2]/div/div[1]/div[2]/form/div[6]/div/div
... AND sleep ${sleep_min}
... ELSE log 不操作
sleep ${sleep_min}
run keyword if "${Required_Password_Change}"=="open" Run Keywords click element xpath=//*[@id="app"]/div/div[3]/div[2]/div/div[1]/div[2]/form/div[5]/div/div
... AND sleep ${sleep_min}
... AND input text xpath=//*[@id="app"]/div/div[3]/div[2]/div/div[1]/div[2]/form/div[6]/div/div/input ${day}
... ELSE log 不开启密码过期验证
Click element xpath=//*[@id="app"]/div/div[3]/div[2]/div/div/div[1]/div[2]/form/div[last()]/div/div/div/span/span/i
sleep ${sleep_min}
Execute Javascript window.scrollTo(0, document.body.scrollHeight)
sleep ${sleep_min}
click element //span[.="${role}"]
sleep ${sleep_min}
click button xpath=/html/body/div[1]/div/div[3]/div[2]/div/div[2]/button[1]
sleep ${sleep}
UserEdit
[Arguments] ${password} ${enable}
sleep ${sleep}
click element id=userEdit
sleep ${sleep_min}
input text xpath=//*[@id="app"]/div/div[3]/div[2]/div/div[1]/div[2]/form/div[3]/div/div/input ${password}
sleep ${sleep_min}
input text xpath=//*[@id="app"]/div/div[3]/div[2]/div/div[1]/div[2]/form/div[4]/div/div/input ${password}
sleep ${sleep_min}
run keyword if "${enable}"=="close" run keywords click element xpath=//*[@id="app"]/div/div[3]/div[2]/div/div[1]/div[2]/form/div[6]/div/div
... AND sleep ${sleep_min}
... ELSE log 不操作
sleep ${sleep_min}
click button xpath=/html/body/div[1]/div/div[3]/div[2]/div/div[2]/button[1]
sleep ${sleep}
UserSearchName
[Arguments] ${name} ${type}
sleep ${sleep}
click element xpath=//*[@id="app"]/div/div[3]/div[2]/div/div/div[1]/span/div/div/div[2]/div/div/div[1]/input
sleep ${sleep}
run keyword if "${type}"=="Name" run keywords click element xpath=/html/body/div/div[1]/div[1]/ul/li[3]
... AND sleep ${sleep_min}
run keyword if "${type}"=="UserName" run keywords click element xpath=/html/body/div/div[1]/div[1]/ul/li[2]
... AND sleep ${sleep_min}
sleep ${sleep}
input text xpath=//*[@id="app"]/div/div[3]/div[2]/div/div/div[1]/span/div/div/div[2]/div/div[1]/div[3]/div/input ${name}
sleep ${sleep}
click element xpath=//*[@id="app"]/div/div[3]/div[2]/div/div/div[1]/span/div/i
sleep ${sleep}
click element xpath=//*[@id="ly-table1-listcontent"]/div/div[3]/table/tbody/tr[1]
sleep ${sleep}
CreateRoles
[Arguments] ${name} ${description} ${list}
[Documentation]
... ${name}:角色权限名称
... ${description}:备注
... ${list}:权限定位列表
sleep ${sleep_min}
Click element id=VSidebar1_Home1_App0_anonymousComponent-1_System
sleep ${sleep_min}
Click element id=VSidebar1_Home1_App0_anonymousComponent-1_system_accounts/roles
sleep ${sleep_min}
Click element id=app_create
sleep ${sleep}
input text xpath=/html/body/div[1]/div/div[3]/div[2]/div/div[1]/div[2]/form/div[1]/div/div[1]/input ${name}
input text xpath=//*[@id="app"]/div/div[3]/div[2]/div/div[1]/div[2]/form/div[2]/div/div/input ${description}
sleep ${sleep_min}
FOR ${i} IN @{list}
log ${i}
Execute Javascript window.scrollTo(0, document.body.scrollHeight)
click element xpath=${i}
sleep ${sleep_min}
END
click element id=rolesOk
sleep ${sleep_min}
EditRoles
[Arguments] ${name}=null ${description}=null ${Authority}=null ${Authorityxpath}=null
sleep ${sleep_min}
click element id=appEdit
Wait Until Element Is Enabled xpath=/html/body/div[1]/div/div[3]/div[2]/div/div[1]/div[2]/form/div[1]/div/div[1]/input ${sleep_Wait}
run keyword if "${name}" != "null" run keywords sleep ${sleep_min}
... AND input text xpath=/html/body/div[1]/div/div[3]/div[2]/div/div[1]/div[2]/form/div[1]/div/div[1]/input ${name}
... ELSE log name不修改
run keyword if "${description}" != "null" run keywords sleep ${sleep_min}
... AND input text xpath=//*[@id="app"]/div/div[3]/div[2]/div/div[1]/div[2]/form/div[2]/div/div/input ${description}
... ELSE log description不修改
run keyword if "${Authority}" != "null" run keywords sleep ${sleep_min}
... AND click element xpath=${Authorityxpath}
... ELSE log 权限不修改
sleep ${sleep_min}
click element id=rolesOk
sleep ${sleep_min}
RolesVerification
[Arguments] ${rolexpath} ${role}
[Documentation]
... ${rolexpath}:权限在侧滑框的定位
... ${role} : 权限 Enable、ReadOnly、Disable
click element xpath=//*[@id="ly-table1-listcontent"]/div/div[3]/table/tbody/tr/td[3]/div/div/span/span
Wait Until Element Is Enabled xpath=//*[@id="app"]/div/div[3]/div[2]/div/div/div[5]/div/p ${sleep_Wait}
${text} Get Element Attribute xpath=${rolexpath} class
${role} Set Variable if "${role}" == "Enable" iconfont switch_i icon-Rolesenable
... "${role}" == "ReadOnly" iconfont switch_i icon-Rolesreadonly
... "${role}" == "Disable" iconfont switch_i icon-Rolesdisable
sleep ${sleep_min}
click element id=permission_cancel
sleep ${sleep_min}
Should Be Equal As Strings ${text} ${role}
RoleSearch
[Arguments] ${name}
[Documentation] Roles页面搜索功能
... ${name}:搜索条件name
sleep ${sleep_min}
Click element xpath=//*[@id="app"]/div/div[3]/div[2]/div/div/div[1]/span/div/div/div[2]/div/div/div[1]/input
sleep ${sleep_min}
Click element xpath=/html/body/div[2]/div[1]/div[1]/ul/li[2]
sleep ${sleep_min}
input text xpath=//*[@id="app"]/div/div[3]/div[2]/div/div/div[1]/span/div/div/div[2]/div/div[1]/div[3]/div/input ${name}
sleep ${sleep_min}
Click element xpath=//*[@id="app"]/div/div[3]/div[2]/div/div/div[1]/span/div/i
sleep ${sleep}
RolesDelete
Click element xpath=//*[@id="ly-table1-listcontent"]/div/div[3]/table/tbody/tr[1]
sleep ${sleep_min}
Click element id=appDel
sleep ${sleep_min}
Click element xpath=/html/body/div/div/div[3]/button[2]
2021-04-28 11:42:59 +08:00
sleep ${sleep}
AuditLogsSearch
[Arguments] ${id} ${TargetType} ${ip}=null
[Documentation]
... ${id} :操作对象的id
... ${TargetType}:类型
... ${ip}:ip不输入默认为测试机IP
sleep ${sleep_min}
click element xpath=//*[@id="app"]/div/div[3]/div[2]/div/div/div[1]/span/div/div/div[2]/div/div/div/input
sleep ${sleep}
click element xpath=/html/body/div/div[1]/div[1]/ul/li[2]
sleep ${sleep_min}
input text xpath=//*[@id="app"]/div/div[3]/div[2]/div/div/div[1]/span/div/div/div[2]/div/div/div[3]/div/input ${id}
sleep ${sleep_min}
click element xpath=//*[@id="ly-table1-listcontent"]/div/div[3]/table/tbody/tr[1]
sleep ${sleep_min}
click element xpath=/html/body/div/div[1]/div[1]/ul/li[2]
sleep ${sleep}
run keyword if "${ip}" == "null" run keywords sleep ${sleep_min}
... AND input text xpath=//*[@id="app"]/div/div[3]/div[2]/div/div/div[1]/span/div/div/div[2]/div/div[2]/div[3]/div/input ${testClentIP}
... ELSE IF "${ip}" != "null" run keywords sleep ${sleep_min}
... AND input text xpath=//*[@id="app"]/div/div[3]/div[2]/div/div/div[1]/span/div/div/div[2]/div/div[2]/div[3]/div/input ${ip}
sleep ${sleep_min}
click element xpath=//*[@id="ly-table1-listcontent"]/div/div[3]/table/tbody/tr[1]
sleep ${sleep_min}
click element xpath=/html/body/div/div[1]/div[1]/ul/li[2]
sleep ${sleep}
Execute Javascript window.scrollTo(0, document.body.scrollHeight)
click element xpath=/html/body/div/div[1]/div[1]/ul/li/span[contains(text(), "${TargetType}")]
sleep ${sleep_min}
click element xpath=//*[@id="app"]/div/div[3]/div[2]/div/div/div[1]/span/div/i
sleep ${sleep}
AuditLogsSearch-NotID
[Arguments] ${TargetType} ${ip}=null
[Documentation]
... ${TargetType}:类型
... ${ip}:ip不输入默认为测试机IP
sleep ${sleep_min}
click element xpath=//*[@id="app"]/div/div[3]/div[2]/div/div/div[1]/span/div/div/div[2]/div/div/div/input
sleep ${sleep}
click element xpath=/html/body/div/div[1]/div[1]/ul/li[3]
sleep ${sleep_min}
run keyword if "${ip}" == "null" run keywords sleep ${sleep_min}
... AND input text xpath=//*[@id="app"]/div/div[3]/div[2]/div/div/div[1]/span/div/div/div[2]/div/div/div[3]/div/input ${testClentIP}
... ELSE IF "${ip}" != "null" run keywords sleep ${sleep_min}
... AND input text xpath=//*[@id="app"]/div/div[3]/div[2]/div/div/div[1]/span/div/div/div[2]/div/div/div[3]/div/input ${ip}
sleep ${sleep_min}
click element xpath=//*[@id="ly-table1-listcontent"]/div/div[3]/table/tbody/tr[1]
sleep ${sleep_min}
click element xpath=/html/body/div/div[1]/div[1]/ul/li[3]
sleep ${sleep_min}
Execute Javascript window.scrollTo(0, document.body.scrollHeight)
click element xpath=/html/body/div/div[1]/div[1]/ul/li/span[contains(text(), "${TargetType}")]
sleep ${sleep_min}
click element xpath=//*[@id="app"]/div/div[3]/div[2]/div/div/div[1]/span/div/i
sleep ${sleep}
LoginLogsSearch
[Arguments] ${Operator}
sleep ${sleep}
click element xpath=//*[@id="app"]/div/div[3]/div[2]/div/div/div[1]/span/div/div/div[2]/div/div/div/input
sleep ${sleep_min}
click element xpath=/html/body/div/div[1]/div[1]/ul/li[2]
sleep ${sleep}
input text xpath=//*[@id="app"]/div/div[3]/div[2]/div/div/div[1]/span/div/div/div[2]/div/div/div[3]/div/div/input ${Operator}
sleep ${sleep}
click element xpath=/html/body/div/div/div/ul/li/span[contains(text(), "${Operator}")]
sleep ${sleep_min}
click element xpath=//*[@id="app"]/div/div[3]/div[2]/div/div/div[1]/span/div/i
sleep ${sleep}
CreateLDAPServer
[Arguments] ${list} ${Enbale}=close ${ADCAuthentication}=close ${NoOKButton}=1
[Documentation]
... ${Name}:LDAP服务器名称 ${Host}:主机地址 ${Port}:端口号 ${UserName} :用户名 ${UserMapper-prefix}:用户映射左匹配 ${UserMapper-suffix}:用户映射器右匹配
... ${Password}:密码 ${ConnectionTimeout}:链接超时时间 ${Enbale};是否生效默认为关闭open开启 ${ADCAuthentication}ADC认证默认关闭open开启 ${NoOKButton}=1不点击OK按钮
System VSidebar1_Home1_App0_anonymousComponent-1_system_LadpServer
click element id=ldapAdd
sleep ${sleep_min}
input text xpath=//*[@id="app"]/div/div[3]/div[2]/div/div[1]/div[2]/form/div[1]/div/div[1]/input ${list}[0]
sleep ${sleep_min}
input text xpath=//*[@id="app"]/div/div[3]/div[2]/div/div[1]/div[2]/form/div[2]/div/div[1]/input ${list}[1]
sleep ${sleep_min}
input text xpath=//*[@id="app"]/div/div[3]/div[2]/div/div[1]/div[2]/form/div[3]/div/div/input ${list}[2]
sleep ${sleep_min}
input text xpath=//*[@id="app"]/div/div[3]/div[2]/div/div[1]/div[2]/form/div[4]/div/div[1]/input ${list}[3]
sleep ${sleep_min}
input text xpath=//*[@id="app"]/div/div[3]/div[2]/div/div[1]/div[2]/form/div[5]/div/div[1]/input ${list}[4]
sleep ${sleep_min}
input text xpath=//*[@id="app"]/div/div[3]/div[2]/div/div[1]/div[2]/form/div[5]/div/div[2]/input ${list}[5]
sleep ${sleep_min}
input text xpath=//*[@id="app"]/div/div[3]/div[2]/div/div[1]/div[2]/form/div[6]/div/div/input ${list}[6]
sleep ${sleep_min}
input text xpath=//*[@id="app"]/div/div[3]/div[2]/div/div[1]/div[2]/form/div[8]/div/div/div/input ${list}[7]
sleep ${sleep_min}
run keyword if "${Enbale}"!= "close" run keywords sleep ${sleep_min}
... AND click element xpath=//*[@id="app"]/div/div[3]/div[2]/div/div[1]/div[2]/form/div[7]/div/div/span
... AND sleep ${sleep_min}
... ELSE log 不开启Enable按钮
run keyword if "${ADCAuthentication}"!= "close" run keywords sleep ${sleep_min}
... AND click element xpath=//*[@id="app"]/div/div[3]/div[2]/div/div[1]/div[2]/form/div[9]/div/div/span
... AND sleep ${sleep_min}
... ELSE log 不开启ADCAuthentication按钮
click element id=ldapTestConnection
Wait Until Element Is Enabled xpath=/html/body/div[last()]/p ${sleep_Wait}
run keyword if "${NoOKButton}"== "1" run keywords sleep ${sleep_min}
... AND click element id=ldapAddSuccess
sleep ${sleep}
EditLDAPServer
[Arguments] ${list} ${Enbale}=close ${ADCAuthentication}=close
[Documentation]
... ${Name}:LDAP服务器名称 ${Host}:主机地址 ${Port}:端口号 ${UserName} :用户名 ${UserMapper-prefix}:用户映射左匹配 ${UserMapper-suffix}:用户映射器右匹配
... ${Password}:密码 ${ConnectionTimeout}:链接超时时间 ${Enbale};是否生效默认为关闭open开启 ${ADCAuthentication}ADC认证默认关闭open开启)
sleep ${sleep}
click element xpath=//*[@id="ly-table1-listcontent"]/div/div[3]/table/tbody/tr[1]
sleep ${sleep_min}
click element id=ldapEdit
sleep ${sleep_min}
input text xpath=//*[@id="app"]/div/div[3]/div[2]/div/div[1]/div[2]/form/div[4]/div/div[1]/input ${list}[0]
sleep ${sleep_min}
input text xpath=//*[@id="app"]/div/div[3]/div[2]/div/div[1]/div[2]/form/div[5]/div/div[1]/input ${list}[1]
sleep ${sleep_min}
input text xpath=//*[@id="app"]/div/div[3]/div[2]/div/div[1]/div[2]/form/div[6]/div/div/input ${list}[2]
sleep ${sleep_min}
input text xpath=//*[@id="app"]/div/div[3]/div[2]/div/div[1]/div[2]/form/div[7]/div/div[1]/input ${list}[3]
sleep ${sleep_min}
input text xpath=//*[@id="app"]/div/div[3]/div[2]/div/div[1]/div[2]/form/div[8]/div/div[1]/input ${list}[4]
sleep ${sleep_min}
input text xpath=//*[@id="app"]/div/div[3]/div[2]/div/div[1]/div[2]/form/div[8]/div/div[2]/input ${list}[5]
sleep ${sleep_min}
input text xpath=//*[@id="app"]/div/div[3]/div[2]/div/div[1]/div[2]/form/div[9]/div/div/input ${list}[6]
sleep ${sleep_min}
input text xpath=//*[@id="app"]/div/div[3]/div[2]/div/div[1]/div[2]/form/div[11]/div/div/div/input ${list}[7]
sleep ${sleep_min}
run keyword if "${Enbale}"!= "close" run keywords sleep ${sleep_min}
... AND click element xpath=//*[@id="app"]/div/div[3]/div[2]/div/div[1]/div[2]/form/div[10]/div/div/span
... AND sleep ${sleep_min}
... ELSE log 不开启Enable按钮
run keyword if "${ADCAuthentication}"!= "close" run keywords sleep ${sleep_min}
... AND click element xpath=//*[@id="app"]/div/div[3]/div[2]/div/div[1]/div[2]/form/div[12]/div/div/span
... AND sleep ${sleep_min}
... ELSE log 不开启ADCAuthentication按钮
click element id=ldapTestConnection
Wait Until Element Is Enabled xpath=/html/body/div[last()]/p ${sleep_Wait}
click element id=ldapAddSuccess
sleep ${sleep}
DeleteLDAPServer
sleep ${sleep_min}
click element xpath=//*[@id="ly-table1-listcontent"]/div/div[3]/table/tbody/tr[1]
sleep ${sleep_min}
click element id=ldapDel
sleep ${sleep}
click element xpath=/html/body/div/div/div[3]/button[2]
Wait Until Element Is Enabled xpath=/html/body/div[last()]/p ${sleep_Wait}
LDAPServerSearch
[Arguments] ${value} ${search}
Wait Until Element Is Enabled id=ldapAdd ${sleep_Wait}
click element xpath=//*[@id="app"]/div/div[3]/div[2]/div/div/div[1]/span/div/div/div[2]/div/div/div/input
sleep ${sleep_min}
run keyword if "${search}" == "id" run keywords sleep ${sleep_min}
... AND click element xpath=/html/body/div/div[1]/div[1]/ul/li[2]
run keyword if "${search}" == "name" run keywords sleep ${sleep_min}
... AND click element xpath=/html/body/div/div[1]/div[1]/ul/li[3]
sleep ${sleep_min}
input text xpath=//*[@id="app"]/div/div[3]/div[2]/div/div/div[1]/span/div/div/div[2]/div/div/div[3]/div/input ${value}
sleep ${sleep}
click element xpath=//*[@id="app"]/div/div[3]/div[2]/div/div/div[1]/span/div/i
sleep ${sleep}
LDAPVerificationADC
[Arguments] ${name} ${type}
[Documentation] 验证name的ADC按钮是否开启同一个服务ADC只能开启一个
... ${name}要查询的LDAPServer的名称
... ${type}:判断开启和关闭close / open
System VSidebar1_Home1_App0_anonymousComponent-1_system_LadpServer
LDAPServerSearch ${name} name
${text} Get Element Attribute xpath=//*[@id="ly-table1-listcontent"]/div/div[3]/table/tbody/tr[1]/td[9]/div/div/span/div class
sleep ${sleep_min}
run keyword if "${text}" != "el-switch" and "${type}"=="close" run keywords sleep ${sleep_min}
... AND click element xpath=//*[@id="ly-table1-listcontent"]/div/div[3]/table/tbody/tr[1]/td[9]/div/div/span/div
run keyword if "${text}" != "el-switch is-checked" and "${type}"=="open" run keywords sleep ${sleep_min}
... AND click element xpath=//*[@id="ly-table1-listcontent"]/div/div[3]/table/tbody/tr[1]/td[9]/div/div/span/div
sleep ${sleep_min}
RestrictionsButton
[Arguments] ${type}
sleep ${sleep_min}
${status1} Get Element Attribute xpath=//*[@id="policy_Manipulation2"]/div/div[2]/div/div/form/div[1]/div/div class
${status2} Set Variable If "${status1}"=="el-switch" close open
run keyword if "${status2}" != "${type}" run keywords sleep ${sleep_min}
... AND click element xpath=//*[@id="policy_Manipulation2"]/div/div[2]/div/div/form/div[1]/div/div/span
... ELSE log 不需要改变
sleep ${sleep}
click element id=wanAdd_ok
sleep ${sleep}
AddAuthorizedSourceIP
[Arguments] ${IP}
[Documentation] 增加IP
sleep ${sleep_min}
click element id=temporary_form
sleep ${sleep_min}
input text xpath=//*[@id="policy_Manipulation2"]/div/div[2]/div/div/form/div[2]/div/div[1]/div[2]/div[1]/div/div[last()]/div/div[1]/div[1]/div/div[2]/div/input ${IP}
sleep ${sleep_min}
click element id=wanAdd_ok
sleep ${sleep}
LoginRestrictions-SearchIP
[Arguments] ${IP}
sleep ${sleep_min}
input text id=object_ip_search ${IP}
sleep ${sleep_min}
press keys id=object_ip_search ENTER
sleep ${sleep_min}
LoginRestrictions-DeleteIP
2021-05-13 14:15:40 +08:00
sleep ${sleep_min}
${text} Get Element Attribute xpath=/html/body/div/div/div[3]/div[2]/div/div[1]/div/div[2]/div/div/form/div[2]/div/div[1]/div[2]/div[1]/div/div[last()]/div/div/div[2]/i[2] id
2021-05-13 14:15:40 +08:00
click element id=${text}
sleep ${sleep}
click element id=wanAdd_ok
sleep ${sleep}
LoginRestrictions-LastIPNumber
[Documentation] 返回最后一个IP的位数
${a} Set Variable ${7}
sleep ${sleep_min}
Execute Javascript window.scrollTo(0, document.body.scrollHeight)
${text} Get Element Attribute xpath=/html/body/div/div/div[3]/div[2]/div/div[1]/div/div[2]/div/div/form/div[2]/div/div[1]/div[2]/div[1]/div/div[last()]/div/div/div[2]/i[2] id
sleep ${sleep_min}
${Number}= StringSegmentation ${text} ${a}
[Return] ${Number}
EditMaximumLoginAttemepts
[Arguments] ${Number}
[Documentation] 修改最多错误次数
sleep ${sleep_min}
input text xpath=//*[@id="policy_Manipulation2"]/div/div[2]/div/div/form/div[3]/div/div[1]/input ${Number}
sleep ${sleep_min}
click element id=wanAdd_ok
sleep ${sleep}
EditLockTime
[Arguments] ${Time}
[Documentation] 修改等待时间
sleep ${sleep_min}
input text xpath=//*[@id="policy_Manipulation2"]/div/div[2]/div/div/form/div[4]/div/div[1]/input ${Time}
sleep ${sleep_min}
click element id=wanAdd_ok
sleep ${sleep}
OpenMyAccountPage
[Documentation] 打开MyAccount侧滑框
2021-04-28 11:42:59 +08:00
sleep ${sleep_min}
Mouse Hover xpath=//*[@id="app"]/div/div[1]/div[3]/div/span[2]
sleep ${sleep}
click element id=editInfo
sleep ${sleep}
EditMyAccount
[Arguments] ${name} ${password} ${ConfirmPassword} ${RequiredPasswordChange}=null ${Day}=null
[Documentation]
...
sleep ${sleep_min}
2021-05-12 15:14:31 +08:00
input text id=undefined1 ${name}
sleep ${sleep_min}
input text xpath=/html/body/div[3]/div/div[1]/div/div/div[1]/div/div/div[1]/div[2]/form/div[3]/div/div/input ${password}
sleep ${sleep_min}
input text xpath=/html/body/div[3]/div/div[1]/div/div/div[1]/div/div/div[1]/div[2]/form/div[4]/div/div/input ${ConfirmPassword}
sleep ${sleep_min}
${status} Get Element Attribute xpath=/html/body/div[3]/div/div[1]/div/div/div[1]/div/div/div[1]/div[2]/form/div[5]/div/div class
run keyword if "${RequiredPasswordChange}"=="open" and "${status}"=="el-switch" run keywords sleep ${sleep_min}
... AND click element xpath=/html/body/div[3]/div/div[1]/div/div/div[1]/div/div/div[1]/div[2]/form/div[5]/div/div/span
... AND sleep ${sleep_min}
... AND input text xpath=/html/body/div[3]/div/div[1]/div/div/div[1]/div/div/div[1]/div[2]/form/div[6]/div/div/input ${Day}
run keyword if "${RequiredPasswordChange}"=="close" and "${status}"=="el-switch is-checked" run keywords sleep ${sleep_min}
... AND click element xpath=/html/body/div[3]/div/div[1]/div/div/div[1]/div/div/div[1]/div[2]/form/div[9]/div[3]/div/div[1]/span
... ELSE log 不修改密码提醒按钮
sleep ${sleep_min}
click element id=userOk
2021-04-28 11:42:59 +08:00
sleep ${sleep_min}
LoginRestrictionsObtainSQLIP
[Documentation] 获取数据库白名单并返回
sleep ${sleep_min}
Connect To Database Using Custom Params pymysql ${mysqlHost}
${text1} query SELECT login_addr_whitelist FROM login_restrictions_config
${text1} Set Variable ${text1[0][0]}
Disconnect From Database
log ${text1}
[Return] ${text1}
UpdataLoginRestrictionsSQLIP
[Arguments] ${Whitelist}
[Documentation] 恢复白名单数据库
sleep ${sleep}
Connect To Database Using Custom Params pymysql ${mysqlHost}
${return} Execute Sql String UPDATE login_restrictions_config SET login_addr_whitelist='${Whitelist}' WHERE id=1
Disconnect From Database
EditMailServer
[Arguments] ${server} ${port} ${NeedAuthentication} ${name} ${e-mail} ${password} ${SSL}
[Documentation]
...
System VSidebar1_Home1_App0_anonymousComponent-1_system_MailServer
sleep ${sleep_min}
input text xpath=//*[@id="app"]/div/div[3]/div[2]/div/div[1]/div[2]/form/div[1]/div/div/input ${server}
sleep ${sleep_min}
input text xpath=//*[@id="app"]/div/div[3]/div[2]/div/div[1]/div[2]/form/div[2]/div/div/input ${port}
sleep ${sleep_min}
${status} Get Element Attribute xpath=//*[@id="app"]/div/div[3]/div[2]/div/div[1]/div[2]/form/div[3]/div/div class
run keyword if "${NeedAuthentication}" == "close" and "${status}" == "el-switch is-checked" run keywords sleep ${sleep_min}
... AND click element xpath=//*[@id="app"]/div/div[3]/div[2]/div/div[1]/div[2]/form/div[3]/div/div/span
run keyword if "${NeedAuthentication}" == "open" and "${status}" == "el-switch" run keywords sleep ${sleep_min}
... AND click element xpath=//*[@id="app"]/div/div[3]/div[2]/div/div[1]/div[2]/form/div[3]/div/div/span
sleep ${sleep_min}
input text xpath=//*[@id="app"]/div/div[3]/div[2]/div/div[1]/div[2]/form/div[4]/div/div/div[1]/input ${name}
sleep ${sleep_min}
input text xpath=//*[@id="app"]/div/div[3]/div[2]/div/div[1]/div[2]/form/div[5]/div/div/input ${e-mail}
sleep ${sleep_min}
input text xpath=//*[@id="app"]/div/div[3]/div[2]/div/div[1]/div[2]/form/div[6]/div/div/input ${password}
sleep ${sleep_min}
${SSLstatus} Get Element Attribute xpath=//*[@id="app"]/div/div[3]/div[2]/div/div[1]/div[2]/form/div[7]/div/div class
run keyword if "${SSL}" == "close" and "${SSLstatus}" == "el-switch is-checked" run keywords sleep ${sleep_min}
... AND click element xpath=//*[@id="app"]/div/div[3]/div[2]/div/div[1]/div[2]/form/div[7]/div/div/span
run keyword if "${SSL}" == "open" and "${SSLstatus}" == "el-switch" run keywords sleep ${sleep_min}
... AND click element xpath=//*[@id="app"]/div/div[3]/div[2]/div/div[1]/div[2]/form/div[7]/div/div/span
sleep ${sleep_min}
click element id=mailServerOk
sleep ${sleep}
Login
[Arguments] ${UserName} ${Password}
Mouse Hover xpath=//*[@id="app"]/div/div[1]/div[3]/div/span[2]
sleep ${sleep_min}
click element id=SignOut
sleep ${sleep}
input text xpath=//*[@id="app"]/div/div[2]/div/div[2]/div/input ${UserName}
sleep ${sleep_min}
input text xpath=//*[@id="app"]/div/div[2]/div/div[3]/div/input ${Password}
sleep ${sleep_min}
click element xpath=/html/body/div/div/div[2]/div/div[4]/button
sleep ${sleep}
AdminTurnPage
[Arguments] ${NextPage} ${PreviousPage} ${JumpInput} ${pages} ${AssertXpath} ${last}=null ${lastxpath}=null
[Documentation]
... ${NextPage} 下一页按钮定位
... ${PreviousPage} 上一页按钮定位
... ${JumpInput} 跳转页面输入框
... ${pages} 跳转得页码
... ${last} 次关键字 当最后一页定位和其他页面不同时传入非null的值
... ${lastxpath} 当最后一页定位和其他页面不同时传入最后一页的xpath 定位
${text1} get text xpath=${AssertXpath}
Click element xpath=${NextPage}
sleep ${sleep}
${text2} get text xpath=${AssertXpath}
Click element xpath=${PreviousPage}
sleep ${sleep}
${text3} get text xpath=${AssertXpath}
Clear Element Text xpath=${JumpInput}
sleep ${sleep}
input text xpath=${JumpInput} ${pages}
sleep ${sleep}
press keys xpath=${JumpInput} ENTER
sleep ${sleep}
${text4} get text xpath=${AssertXpath}
run keyword if "${last}"=="null" run keywords sleep ${sleep_min}
... AND Click element xpath=//*[@id="app"]/div/div[3]/div[2]/div/div[2]/div/div/div[last()]/div/ul/li[last()]
... ELSE Click element xpath=${lastxpath}
sleep ${sleep}
${text5} get text xpath=${AssertXpath}
Should Not Be Equal ${text1} ${text2}
Should Not Be Equal ${text3} ${text2}
Should Not Be Equal ${text3} ${text4}
Should Not Be Equal ${text1} ${text5}
Assertion
[Arguments] ${assertxpath} ${asserttext}
${text} Get text xpath=${assertxpath}
Should Be Equal As Strings ${text} ${asserttext}
Assertion-ElementAttributes
[Arguments] ${assertxpath} ${asserttext} ${Element}
${text} Get Element Attribute xpath=${assertxpath} ${Element}
Should Be Equal As Strings ${text} ${asserttext}