summaryrefslogtreecommitdiff
path: root/common/ui_common/objects/tunnels.py
diff options
context:
space:
mode:
Diffstat (limited to 'common/ui_common/objects/tunnels.py')
-rw-r--r--common/ui_common/objects/tunnels.py215
1 files changed, 147 insertions, 68 deletions
diff --git a/common/ui_common/objects/tunnels.py b/common/ui_common/objects/tunnels.py
index 05ac03d5..519d9d0d 100644
--- a/common/ui_common/objects/tunnels.py
+++ b/common/ui_common/objects/tunnels.py
@@ -102,12 +102,12 @@ class Tunnels:
self.driver.find_element(By.XPATH,mainPage_firstLevelMenu_Objects_posXpath).click()
self.driver.find_element(By.XPATH,mainPage_secondLevelMenu_Tunnel_posXpath).click()
# 增加首次进入时验证Total和首行是否存在
- if self.my_count == 0:
- total_text = self.driver.find_element(By.XPATH, main_listPage_object_bottomTotal_postXpath).text
- total_value = int(total_text.split(":")[-1].strip())
- is_first_exist = self.driver.element_isExist(By.XPATH, list_first_row_first_column_posXpath)
- assert is_first_exist or total_value == 0, "校验失败!!列表页为空!!"
- self.my_count += 1
+ # if self.my_count == 0:
+ # total_text = self.driver.find_element(By.XPATH, main_listPage_object_bottomTotal_postXpath).text
+ # total_value = int(total_text.split(":")[-1].strip())
+ # is_first_exist = self.driver.element_isExist(By.XPATH, list_first_row_first_column_posXpath)
+ # assert is_first_exist or total_value == 0, "校验失败!!列表页为空!!"
+ # self.my_count += 1
def pop_export_part(self):
self.driver.find_element(By.XPATH, listPage_object_Tunnels_exportButton_posXPATH).click()
@@ -147,7 +147,7 @@ class Tunnels:
def _export_objects_and_verify(self, data):
self._create(data) # 新建,新建后就是查询到该条数据的状态
- self.driver.find_element(By.XPATH, listPage_object_Tunnels_select_First_object_posXpath).click() # 选中第一行
+ self.driver.find_element(By.XPATH, listPage_select_first_object_posXpath).click() # 选中第一行
self._export_objects() # 选中并导出文件
time.sleep(3)
self.file_name = get_txt_filenames(path=self.my_files._obj_files_dowload_path())
@@ -169,17 +169,17 @@ class Tunnels:
self.create_tunnel(data) # 新建,新建后就是查询到该条数据的状态
if data["SubType"] == "cancel_export":
# 1、单个Object导出取消选中目标数据
- self.driver.find_element(By.XPATH, listPage_object_Tunnels_select_First_object_posXpath).click()
+ self.driver.find_element(By.XPATH, listPage_select_first_object_posXpath).click()
self.pop_cancel_export_num()
self.create_tunnel(data)
# 2、多个Object导出取消选中目标数据(2个)
- self.driver.find_element(By.XPATH, listPage_object_Tunnels_select_First_object_posXpath).click()
+ self.driver.find_element(By.XPATH, listPage_select_first_object_posXpath).click()
self.driver.find_element(By.XPATH, listPage_object_Tunnels_select_second_object_posXpath).click()
self.pop_cancel_export_num()
self._delete(data)
elif data["SubType"] == "multi_export":
self.create_tunnel(data)
- self.driver.find_element(By.XPATH, listPage_object_Tunnels_select_First_object_posXpath).click()
+ self.driver.find_element(By.XPATH, listPage_select_first_object_posXpath).click()
self.driver.find_element(By.XPATH, listPage_object_Tunnels_select_second_object_posXpath).click()
if data["multi_type"] == "all": # 4、多选导出所有数据,校验行数
self._export_objects()
@@ -262,7 +262,7 @@ class Tunnels:
# self._goto_subObjectPage()
# self._search(data)
# 查询后编辑
- self.driver.find_element(By.XPATH, listPage_object_Tunnels_select_First_object_posXpath).click()
+ self.driver.find_element(By.XPATH, listPage_select_first_object_posXpath).click()
self.driver.find_element(By.XPATH, listPage_object_Tunnels_editButton_posXPATH).click() # edit按钮
def _verify_not_checkbox_export(self, data: {}):
@@ -315,7 +315,7 @@ class Tunnels:
# 调用消除右上提示弹窗
self._goto_subObjectPage()
# first_quoted_tunnel_elem_posXpath = '(//*[@class="obj-charts-btn pro-port cursorPointer textCenter" and text() != 0])[1]/parent::div/parent::div/parent::td'
- self.driver.find_element(By.XPATH, listPage_object_Tunnels_select_First_object_posXpath).click()
+ self.driver.find_element(By.XPATH, listPage_select_first_object_posXpath).click()
del_button_elem = listPage_object_Tunnels_delButton_posXpath
del_button_elem_clickable = self.objects_po.is_element_clickable(del_button_elem, "XPATH")
print("当前元素是否可点击:{}".format(del_button_elem_clickable))
@@ -393,10 +393,10 @@ class Tunnels:
search_types = data["Search_type"].split('&')
for search_type in search_types:
if not fuzzy_search:
- if search_type == "ID":
+ if search_type == "UUID":
self.driver.find_element(By.XPATH, listpage_search_box_posXpath).click()
- self.driver.find_element(By.XPATH, listpage_search_box_posXpath).send_keys(self.table_dict['ID'])
- self.driver.find_element(By.XPATH, listPage_objectSearch_Tunnels_select_Id_posId).click()
+ self.driver.find_element(By.XPATH, listpage_search_box_posXpath).send_keys(self.table_dict['UUID'])
+ self.driver.find_element(By.XPATH, listPage_objectSearch_select_UUID_posXpath).click()
elif search_type == "Name":
self.driver.find_element(By.XPATH, listpage_search_box_posXpath).click()
input_value = self.operate_input_value_4_multiple_search(self.table_dict['Name'])
@@ -405,7 +405,7 @@ class Tunnels:
self.driver.find_element(By.XPATH, listPage_objectSearch_Tunnels_select_Name_posId).click()
elif search_type == "IP":
self.driver.find_element(By.XPATH, listpage_search_box_posXpath).click()
- input_value = self.operate_input_value_4_multiple_search(self.table_dict['Details'])
+ input_value = self.operate_input_value_4_multiple_search("2.2.2.3")
self.driver.find_element(By.XPATH, listpage_search_box_posXpath).send_keys(
input_value)
self.driver.find_element(By.XPATH, listPage_objectSearch_Tunnels_select_IP_posId).click()
@@ -416,7 +416,7 @@ class Tunnels:
input_value)
self.driver.find_element(By.XPATH, listPage_objectSearch_Tunnels_select_Name_posId).click()
else: # 全局查询
- if search_type == "ID":
+ if search_type == "UUID":
self.driver.find_element(By.XPATH, listpage_search_box_posXpath).click()
self.driver.find_element(By.XPATH, listpage_search_box_posXpath).send_keys(self.table_dict['ID'])
elif search_type == "Name":
@@ -505,6 +505,7 @@ class Tunnels:
# 通过Name查询,查看内容是否和新建时一致
# self.extract_ele_tunnel() ## 提取ID、Name、Description、Detail
self.table_dict = self.objects_po.extract_ele(need_exclude=2)
+ print(self.table_dict)
# first_detail_elem = self.driver.find_element(By.XPATH,'(//div[@class="itemDetails cursor"]//div[@class="three-row list-popover-click"])[1]')
# ActionChains(self.driver).move_to_element(first_detail_elem).perform()
# first_detail_ip_elem = self.driver.find_element(By.XPATH,'((//div[contains(@x-placement,"right-start")]//td)[last()]//div)[last()]')
@@ -558,17 +559,17 @@ class Tunnels:
self.driver.find_element(By.XPATH, tunnel_ip_list_close).click()
##endpoint B中新建ip object group
- self.driver.find_element(By.XPATH, tunnel_add_endpoint_b).click()
- self.driver.find_element(By.XPATH, tunnel_add_item_2).click()
- self.driver.find_element(By.XPATH, tunnel_ip_list_add_button).click()
- self.driver.find_element(By.XPATH, tunnel_ip_list_select_ip_group).click()
- self.driver.find_element(By.XPATH, tunnel_slide_ip_name).send_keys("test_ui_4_tunnle")
- self.driver.find_element(By.XPATH, tunnel_ip_group_add_subobject).click()
- self.driver.find_element(By.XPATH, tunnel_ip_group_first_row).click()
- self.driver.find_element(By.XPATH, tunnel_ip_list_close2).click()
- self.driver.find_element(By.XPATH, tunnel_slide_ip_ok).click()
- # self.driver.find_element(By.XPATH, tunnel_slide_ip_confirm_ok).click()
- self.driver.find_element(By.XPATH, tunnel_ip_list_close).click()
+ # self.driver.find_element(By.XPATH, tunnel_add_endpoint_b).click()
+ # self.driver.find_element(By.XPATH, tunnel_add_item_2).click()
+ # self.driver.find_element(By.XPATH, tunnel_ip_list_add_button).click()
+ # self.driver.find_element(By.XPATH, tunnel_ip_list_select_ip_group).click()
+ # self.driver.find_element(By.XPATH, tunnel_slide_ip_name).send_keys("test_ui_4_tunnle")
+ # self.driver.find_element(By.XPATH, tunnel_ip_group_add_subobject).click()
+ # self.driver.find_element(By.XPATH, tunnel_ip_group_first_row).click()
+ # self.driver.find_element(By.XPATH, tunnel_ip_list_close2).click()
+ # self.driver.find_element(By.XPATH, tunnel_slide_ip_ok).click()
+ # # self.driver.find_element(By.XPATH, tunnel_slide_ip_confirm_ok).click()
+ # self.driver.find_element(By.XPATH, tunnel_ip_list_close).click()
# 确认保存
self.driver.find_element(By.XPATH,TunnelsObjectPage_button_SaveYes_posXpath).click()
@@ -576,6 +577,7 @@ class Tunnels:
# self.extract_ele_tunnel() ## 提取ID、Name、Description、Detail
self.table_dict = self.objects_po.extract_ele(need_exclude=2)
+ print(self.table_dict)
# first_detail_elem = self.driver.find_element(By.XPATH,'(//div[@class="itemDetails cursor"]//div[@class="three-row list-popover-click"])[1]')
# time.sleep(1)
# ActionChains(self.driver).move_to_element(first_detail_elem).perform()
@@ -592,7 +594,7 @@ class Tunnels:
if "isDeleteGroup" in data and data["isDeleteGroup"] == "True":
# self.driver.find_element(By.XPATH, mainPage_secondLevelMenu_ipAddress_posXpath).send_keys(
# "test_ui_4_tunnle")
- # self.driver.find_element(By.XPATH, listPage_objectSearch_ip_address_select_Name_posXpath).click()
+ # self.driver.find_element(By.XPATH, listPage_objectSearch_select_Name_posXpath).click()
# self.driver.find_element(By.XPATH, listpage_search_button_posXpath).click()
# # 尝试定位第一个对象,如果找到则执行删除操作
# try:
@@ -606,9 +608,9 @@ class Tunnels:
# # 如果没有找到元素,打印消息并跳过删除操作
# print("未找到第一个对象,跳过删除操作")
# 筛选目标数据
- self.driver.find_element(By.XPATH, mainPage_secondLevelMenu_ipAddress_posXpath).send_keys(
+ self.driver.find_element(By.XPATH, listpage_search_input_posXpath).send_keys(
"test_ui_4_tunnle")
- self.driver.find_element(By.XPATH, listPage_objectSearch_ip_address_select_Name_posXpath).click()
+ self.driver.find_element(By.XPATH, listPage_objectSearch_select_Name_posXpath).click()
self.driver.find_element(By.XPATH, listpage_search_button_posXpath).click()
is_target_exist = self.driver.element_isExist(By.XPATH,
listPage_object_tableCheckbox_localVsysAndReferenceEqualO_objectOrGroup_posXpaths)
@@ -625,13 +627,14 @@ class Tunnels:
self.driver.find_element(By.XPATH,listPage_object_ip_address_delButton_posXpath).click()
self.driver.find_element(By.XPATH, listPage_object_ip_address_del_yes_Button_posXpath).click()
time.sleep(2)
+ self.driver.refresh()
# 筛选目标数据
- self.driver.find_element(By.XPATH, mainPage_secondLevelMenu_ipAddress_posXpath).send_keys(
+ self.driver.find_element(By.XPATH, listpage_search_input_posXpath).send_keys(
"test_ui_4_tunnle")
- # element = self.driver.find_element(By.XPATH, listPage_objectSearch_ip_address_select_Name_posXpath)
+ # element = self.driver.find_element(By.XPATH, listPage_objectSearch_select_Name_posXpath)
# self.driver.execute_script("arguments[0].scrollIntoView();", element)
# element.click()
- self.wait.until(EC.presence_of_element_located((By.XPATH,listPage_objectSearch_ip_address_select_Name_posXpath))).click()
+ self.wait.until(EC.presence_of_element_located((By.XPATH,listPage_objectSearch_select_Name_posXpath))).click()
self.driver.find_element(By.XPATH, listpage_search_button_posXpath).click()
time.sleep(2)
is_target_exist = self.driver.element_isExist(By.XPATH,
@@ -693,7 +696,7 @@ class Tunnels:
self.random_name = self.my_random.random_name() # 重新生成一个random_name
self.random_item = self.my_random.random_tunnel() # 重新生成的endpoint
# 查询后EditName
- self.driver.find_element(By.XPATH, listPage_object_Tunnels_select_First_object_posXpath).click() # 第一行数据前的复选框
+ self.driver.find_element(By.XPATH, listPage_select_first_object_posXpath).click() # 第一行数据前的复选框
self.driver.find_element(By.XPATH, listPage_object_Tunnels_editButton_posXPATH).click() # edit按钮
self.objects_po.clear_Name(path=Tunnel_ObjectPage_InputName_posXpath) # 清除name
self.driver.find_element(By.XPATH, Tunnel_ObjectPage_InputName_posXpath).send_keys(self.random_name) # 重新输入name
@@ -710,7 +713,7 @@ class Tunnels:
def _delete(self, data):
# self._goto_subObjectPage()
self._search(data)
- self.driver.find_element(By.XPATH, listPage_object_Tunnels_select_First_object_posXpath).click() # 选择第一个对象
+ self.driver.find_element(By.XPATH, listPage_select_first_object_posXpath).click() # 选择第一个对象
# 确认删除
self.driver.find_element(By.XPATH,listPage_object_Tunnels_delButton_posXpath).click()
self.driver.find_element(By.XPATH, listPage_object_Tunnels_del_yes_Button_posXpath).click()
@@ -761,8 +764,8 @@ class Tunnels:
# self.key12 = self.driver.find_element(By.XPATH, list_first_row_second_column_posXpath).text
# self.value22 = self.driver.find_element(By.XPATH, list_second_row_second_column_posXpath).text
# Name
- self.key13 = self.driver.find_element(By.XPATH, list_first_row_third_column_posXpath).text
- self.value23 = self.driver.find_element(By.XPATH, "//div[@class='MuiDataGrid-virtualScrollerRenderZone css-1inm7gi']/div[1]//div[@data-field='name']//span[@class='truncate']").text
+ self.key13 = self.driver.find_element(By.XPATH, '//div[text()="Name"]').text
+ self.value23 = self.driver.find_element(By.XPATH, '//div[@aria-rowindex="2"]//span[@class="truncate"]').text
# 字典
# self.edit_table_dict = {self.key11: self.value12, self.key12: self.value22, self.key13: self.value23}
self.edit_table_dict = {self.key13: self.value23}
@@ -770,14 +773,15 @@ class Tunnels:
def new_security_policy_tunnel(self, data: {}):
# 跳转到安全策略创建页面
- self.driver.find_element(By.ID, mainPage_firstLevelMenu_Policy_posId).click()
- self.driver.find_element(By.ID, mainPage_secondLevelMenu_Security_posId).click()
+ self.driver.find_element(By.XPATH, mainPage_firstLevelMenu_Policy_posXpath).click()
+ self.driver.find_element(By.XPATH, mainPage_secondLevelMenu_Security_posXpath).click()
# 添加tunnel
self.driver.find_element(By.XPATH, listpage_create_button_posXpath).click()
self.driver.find_element(By.XPATH, security_create_Name_input_frame_PosXpath).send_keys(data["Name"])
self.driver.find_element(By.XPATH, security_policy_add_condition_button_by_xpath).click() # 选择Condition按钮
self.driver.find_element(By.XPATH, security_create_add_tunnel_button_click_PosXpath).click() # 选择tunnel
+ self.driver.find_element(By.XPATH, '//i[@class="iconfont icon-Clear_aNormal close-icon"]').click()
time.sleep(2)
self.driver.find_element(By.XPATH, security_add_tunnel_button).click() # 添加tunnel
# self.driver.find_element(By.XPATH, security_search_tunnel_frame_click_PosXpath).send_keys(
@@ -790,8 +794,9 @@ class Tunnels:
print('正常找到Object,正常进行引用创建')
self.driver.find_element(By.XPATH, security_first_tunnel_inlist_click_PosXpath).click()
+ self.driver.find_element(By.XPATH, '//i[@class="iconfont icon-Clear_aNormal close-icon"]').click()
self.driver.find_element(By.XPATH, security_create_ok_click_posXpath).click()
- self.driver.find_element(By.XPATH, security_create_Warn_ok_click_posXpath).click()
+ # self.driver.find_element(By.XPATH, security_create_Warn_ok_click_posXpath).click()
else: # 不存在就跳过
assert self.driver.Exist == False # 未找到元素
print('未找到Object,无法进行引用创建')
@@ -1361,7 +1366,7 @@ class Tunnels:
self._goto_subObjectPage()
self._search(data)
# 修改数据
- self.driver.find_element(By.XPATH, listPage_object_Tunnels_select_First_object_posXpath).click() # 第一行数据前的复选框
+ self.driver.find_element(By.XPATH, listPage_select_first_object_posXpath).click() # 第一行数据前的复选框
self.driver.find_element(By.XPATH, listPage_object_Tunnels_editButton_posXPATH).click() # edit按钮
self.objects_po.clear_Name(path=Tunnel_ObjectPage_InputName_posXpath) # 清除name
self.driver.find_element(By.XPATH, Tunnel_ObjectPage_InputName_posXpath).send_keys(
@@ -1435,7 +1440,7 @@ class Tunnels:
compare_list_detail.append(des_value_detail)
# 在目的vsys中修改
self.driver.find_element(By.XPATH,
- listPage_object_Tunnels_select_First_object_posXpath).click() # 第一行数据前的复选框
+ listPage_select_first_object_posXpath).click() # 第一行数据前的复选框
self.driver.find_element(By.XPATH, listPage_object_Tunnels_editButton_posXPATH).click() # edit按钮
self.objects_po.clear_Name(path=Tunnel_ObjectPage_InputName_posXpath) # 清除name
self.driver.find_element(By.XPATH, Tunnel_ObjectPage_InputName_posXpath).send_keys(
@@ -1483,7 +1488,7 @@ class Tunnels:
self.driver.find_element(By.XPATH, listpage_search_box_posXpath).send_keys(Des_ID_list[0])
self.driver.find_element(By.ID, listPage_objectSearch_Tunnels_select_Id_posId).click()
self.driver.find_element(By.XPATH,listpage_search_button_posXpath).click()
- self.driver.find_element(By.XPATH, listPage_object_Tunnels_select_First_object_posXpath).click() # 选择第一个对象
+ self.driver.find_element(By.XPATH, listPage_select_first_object_posXpath).click() # 选择第一个对象
# 确认删除
self.driver.find_element(By.XPATH,listPage_object_Tunnels_delButton_posXpath).click()
self.driver.find_element(By.XPATH, listPage_object_Tunnels_del_yes_Button_posXpath).click()
@@ -1500,21 +1505,23 @@ class Tunnels:
def View_statistics(self, edit_element):
# 主界面View验证
- self.driver.find_element(By.XPATH,
-
- '(//span[@id="tunnelStatistics-_Objects_tunnel_Home_App_anonymousComponent" and text()="View"])[1]').click()
- self.driver.isElementExist(Element="(//div[@class='ObjectStatisticSlider'])[1]")
+ self.driver.find_element(By.XPATH, main_listPage_object_statistics_view_postXpath).click()
+ self.driver.isElementExist(Element='//i[@class="iconfont icon-Clear_aNormal close-icon"]')
assert self.driver.Exist, "Statistics界面打开"
- self.driver.find_element(By.XPATH, "(//div[@class='ObjectStatisticSlider']//span[text()='Cancel'])[2]").click()
+ self.driver.find_element(By.XPATH, '//i[@class="iconfont icon-Clear_aNormal close-icon"]').click()
+ time.sleep(2)
# 详情界面Statistics验证
- self.driver.find_element(By.XPATH, listPage_object_ip_address_select_First_object_posXpath).click()
+ # self.driver.find_element(By.XPATH, listPage_select_first_object_posXpath).click()
self.driver.find_element(By.XPATH, edit_element).click()
- self.driver.find_element(By.XPATH, "//div[@class='paper-grid-right']//span[text()='Statistics']").click()
- self.driver.isElementExist(Element="(//div[@class='ObjectStatisticSlider'])[1]")
+ self.driver.find_element(By.XPATH, '(//button[text()="Statistics"])[1]').click()
+ self.driver.isElementExist(Element='//div[text()="Object Statistics"]')
assert self.driver.Exist, "Statistics界面打开"
+ time.sleep(2)
+ self.driver.find_element(By.XPATH, '(//i[@class="iconfont icon-Clear_aNormal close-icon"])').click()
+ time.sleep(2)
def modify_tunnel(self, data):
- self.create_tunnel(data)
+ self._create(data)
self._modify2(data)
self._delete(data)
# self.delete_created_ip_bymself(data)
@@ -1525,9 +1532,8 @@ class Tunnels:
self.select_first_row_data_and_edit(data)
# 选择该按钮删除endpoint B
self.driver.find_element(By.XPATH,
- '//*[@id="endpointDelItem-_EndpointBList_ElFormItem_ElForm_VPanel_VEditPanel_tunnelAdd_Home_App_anonymousComponent"]/i')
- self.driver.find_element(By.XPATH,
- '//*[@id="endpointDelItem-_EndpointBList_ElFormItem_ElForm_VPanel_VEditPanel_tunnelAdd_Home_App_anonymousComponent"]/i').click()
+ '//div[@class="tunnel-object-endpointB"]//i[contains(@class,"icon-Delete")]').click()
+ self.driver.find_element(By.XPATH, '//div[@class="tunnel-object-endpointB"]//I[@class="iconfont icon-retract cursor block text-[22px]"]').click()
self.driver.find_element(By.XPATH,TunnelsObjectPage_button_SaveYes_posXpath).click()
# self.driver.find_element(By.CSS_SELECTOR, TunnelsObjectPage_button_warningSaveYes_posSelector).click()
# 断言修改name是否生效
@@ -1535,7 +1541,7 @@ class Tunnels:
time.sleep(3)
self._search(data)
self.select_first_row_data_and_edit(data)
- self.driver.isElementExist(Element=tunnel_add_item_2)
+ self.driver.isElementExist(Element=tunnel_end_point_b_frame)
assert not self.driver.Exist, "endpoint已关闭"
@screenshot_on_failure
@@ -1629,7 +1635,74 @@ class Tunnels:
self.driver.find_element(By.XPATH, listPage_object_Keywords_del_yes_Button_posXpath).click()
def _different_vsys_check(self, data):
- self.objects_po.different_vsys_check("tunnels", data)
+ self.create_tunnel(data)
+ # 获取UIAutoTestVsys的Object信息
+ self.uiAutoTestVsys_object = dict(self.objects_po.table_dict)
+ # 切换Vsys至Vsys0
+ self.profile_pub.change_vsys(vsys_name="vsys0")
+ self.create_tunnel(data)
+ self.vsys0_object = dict(self.objects_po.table_dict)
+ self._search(data)
+ column_setting_btn = self.driver.find_element(By.XPATH,
+ mainPage_ObjectSearch_Column_settings_posXpath) # 列设置按钮
+ self.driver.execute_script("arguments[0].scrollIntoView();", column_setting_btn)
+ column_setting_btn.click() # 点击列设置
+ self.driver.find_element(By.XPATH, '//span[text()="Vsys ID"]').click()
+ self.driver.find_element(By.XPATH, '//span[text()="UUID" and contains(@class,"MuiTypography-body1")]').click()
+ # self.driver.find_element(By.XPATH, "//input[@name='Show/Hide All']").click()
+ # self.driver.find_element(By.XPATH, "//input[@name='Show/Hide All']").click()
+ self.driver.find_element(By.XPATH, '//div[text()="Name"]').click()
+ self.view_check("vsys0")
+ self.profile_pub.change_vsys(vsys_name="PerformanceTestVsys")
+ self._search(data)
+ self.view_check("PerformanceTestVsys")
+ self.profile_pub.change_vsys(vsys_name="UIAutoTestVsys")
+ self._search(data)
+ column_setting_btn = self.driver.find_element(By.XPATH,
+ mainPage_ObjectSearch_Column_settings_posXpath) # 列设置按钮
+ self.driver.execute_script("arguments[0].scrollIntoView();", column_setting_btn)
+ column_setting_btn.click() # 点击列设置
+ self.driver.find_element(By.XPATH, '//span[text()="Vsys ID"]').click()
+ self.driver.find_element(By.XPATH, '//span[text()="UUID" and contains(@class,"MuiTypography-body1")]').click()
+ # self.driver.find_element(By.XPATH, "//input[@name='Show/Hide All']").click()
+ # self.driver.find_element(By.XPATH, "//input[@name='Show/Hide All']").click()
+ self.driver.find_element(By.XPATH, '//div[text()="Name"]').click()
+ self.view_check("UIAutoTestVsys")
+ self.profile_pub.change_vsys(vsys_name="vsys0")
+ self._delete(data)
+
+ def view_check(self,vsys_name):
+ time.sleep(1)
+ total = self.driver.find_element(By.XPATH,"//span[contains(text(),'Total')]").text
+ count = total.split("Total:")
+ if vsys_name == "PerformanceTestVsys":
+ assert int(count[1]) == 1
+ elif vsys_name =="vsys0":
+ assert int(count[1]) == 1
+ assert self.driver.find_element(By.XPATH, listPage_First_object_ID_posXpath).text == self.vsys0_object["UUID"]
+ # assert self.driver.find_element(By.XPATH, listPage_Second_object_ID_posXpath).text == self.uiAutoTestVsys_object["ID"]
+ # self.driver.find_element(By.XPATH,"//*[@id='ly-table1-listcontent']//tbody/tr[2]//span[@class='el-checkbox__inner']").click()
+ # self.driver.find_element(By.XPATH,"//button[@id='appEdit-_OperateBtns_ElRow_Objects_apn_Home_App_anonymousComponent']//p[normalize-space(text()) = 'View']").click()
+ # assert len(self.driver.find_elements(By.XPATH, '//div[@class="IconBtn disabled-btn"]')) == 3
+ # self.driver.isElementExist(APNsObjectPage_button_SaveYes_posXpath)
+ # assert self.driver.Exist == False
+ # self.driver.find_element(By.XPATH,apn_ObjectPage_button_cancel_posXpath).click()
+ elif vsys_name == "UIAutoTestVsys":
+ assert int(count[1]) == 2
+ assert self.driver.find_element(By.XPATH, listPage_First_object_ID_posXpath).text == self.vsys0_object["UUID"]
+ assert self.driver.find_element(By.XPATH, listPage_Second_object_ID_posXpath).text == self.uiAutoTestVsys_object["UUID"]
+ self.driver.find_element(By.XPATH,listPage_select_first_object_posXpath).click()
+ self.driver.find_element(By.XPATH,'//span[text()="View"]').click()
+ # add_item_disable = self.driver.element_isExist(by=By.XPATH,value="//div[@class='object-item-add']/div[@class='IconBtn disabled-btn']")
+ # edit_item_disable = self.driver.element_isExist(by=By.XPATH,value="//div[@class='list-container']//div[@class='IconBtn disabled-btn'][1]")
+ # del_item_disable = self.driver.element_isExist(by=By.XPATH,value="//div[@class='list-container']//div[@class='IconBtn disabled-btn'][2]")
+ # assert add_item_disable == edit_item_disable == del_item_disable == True
+ self.driver.isElementExist(APNsObjectPage_button_SaveYes_posXpath)
+ assert self.driver.Exist == False
+ self.driver.find_element(By.XPATH, port_ObjectPage_button_cancel_posXpath).click()
+ self.driver.find_element(By.XPATH, listpage_select_second_object_posXpath).click()
+ self.driver.find_element(By.XPATH, listPage_object_apns_delButton_posXpath).click()
+ self.driver.find_element(By.XPATH, listPage_object_apns_deleteYes_posXpath).click()
def _audit_log_all_operation(self, data):
try:
@@ -1664,27 +1737,33 @@ if __name__ == '__main__':
tun = Tunnels(demo_fixture=driver)
driver.implicitly_wait(5)
- driver.get("http://192.168.45.158")
+ driver.get("http://192.168.44.72")
# driver.get("http://192.168.42.49")
driver.maximize_window()
# driver.find_element(By.NAME, 'username').send_keys("Gary")
# driver.find_element(By.NAME, 'password').send_keys("4garyautoui")
- driver.find_element(By.XPATH, '//input[@placeholder="User name"]').send_keys("admin")
- driver.find_element(By.XPATH, '//input[@placeholder="Password"]').send_keys("admin")
+ driver.find_element(By.XPATH, '//input[@placeholder="User name"]').send_keys("guouitest")
+ driver.find_element(By.XPATH, '//input[@placeholder="Password"]').send_keys("jMIfnvhc1U")
# driver.find_element(By.NAME, 'username').send_keys("User4Link")
# driver.find_element(By.NAME, 'password').send_keys("User4Link")
driver.find_element(By.XPATH, '//button[@class="MuiButtonBase-root MuiButton-root MuiLoadingButton-root MuiButton-contained MuiButton-containedPrimary MuiButton-sizeLarge MuiButton-containedSizeLarge MuiButton-colorPrimary MuiButton-root MuiLoadingButton-root MuiButton-contained MuiButton-containedPrimary MuiButton-sizeLarge MuiButton-containedSizeLarge MuiButton-colorPrimary !bg-[#4487d4] css-zeizzp"]').click()
# 切换Vsys
# profile_pub = ProfilesPublicOperations(driver)
# profile_pub.change_vsys(vsys_name='UIAutoTestVsys')
- tun.tunnels_case(data=
+ tun.create_tunnel(data=
{
- "ids": "Tunnel的增删改查:IP",
- "CreatType": "Tunnel",
- "SubType": "",
- "Search_type": "Name",
- "type": "IP"
- }
+ "ids": "Tunnel中根据IP查询",
+ "Search_type": "IP",
+ "type": "IP",
+ "isDeleteGroup": "True"
+ },
)
+ tun._delete(data=
+ {
+ "ids": "Tunnel中根据IP查询",
+ "Search_type": "IP",
+ "type": "IP",
+ "isDeleteGroup": "True"
+ },)
time.sleep(3)
driver.quit()