提交 1aeea382 authored 作者: 陈泽健's avatar 陈泽健

补充统一平台的软终端入会流程,完善统一平台的会控巡检流程。

上级 18b4e010
......@@ -119,4 +119,5 @@
- 优化appium相关代码的注释。
34. 2024-12-20
- 调整dingding调用函数的传参问题,调整定时任务执行时间为工作日。
- 补充讯飞、运维以及统一平台的巡检流程,并整合展厅巡检目录的执行初始化文件。
\ No newline at end of file
- 补充讯飞、运维以及统一平台的巡检流程,并整合展厅巡检目录的执行初始化文件。
- 补充统一平台的软终端入会流程,完善统一平台的会控巡检流程。
\ No newline at end of file
......@@ -48,10 +48,10 @@ class Unified_Platform_0001:
safe_click((By.XPATH, "//span[contains(text(),'确定创建')]"),wd)
sleep(8)
safe_click((By.XPATH, "//span[contains(text(),'查看详情')]"), wd)
# 切换窗口2,转到会界面
print(f"这是当前窗口句柄{wd.window_handles}")
wd.switch_to.window(wd.window_handles[1])
print(f"这是跳转后的窗口句柄{wd.window_handles}")
# 切换窗口2,转到会议详情界面
# print(f"这是当前窗口句柄{wd.window_handles}")
# wd.switch_to.window(wd.window_handles[1])
# print(f"这是跳转后的窗口句柄{wd.window_handles}")
sleep(10)
INFO("请查看会议详情是否正确包含:多会议室、会议号、会议名称、会议时间")
SELENIUM_LOG_SCREEN(wd, "50%", "Exhibit_Inspect", "Unified_Platform", "创建会议详情")
......@@ -60,7 +60,7 @@ class Unified_Platform_0001:
safe_click((By.XPATH, "//span[contains(text(),'进入会控')]"),wd)
sleep(10)
# 切换窗口2,转到会控界面
wd.switch_to.window(wd.window_handles[1])
# wd.switch_to.window(wd.window_handles[1])
# 进行多画面设置
safe_click((By.XPATH, "//div[@class='frames framesActive el-popover__reference']//span[contains(text(),'一画面')]"),wd)
sleep(5)
......@@ -96,6 +96,7 @@ class Unified_Platform_0001:
safe_click((By.XPATH, "(//img[@title='取消静音'])[1]"),wd)
sleep(2)
SELENIUM_LOG_SCREEN(wd, "50%", "Exhibit_Inspect", "Unified_Platform", "终端设备控制")
SELENIUM_LOG_SCREEN(wd, "50%", "Exhibit_Inspect", "Unified_Platform", "终端入会画面")
# 创建多SMC会议,提示MCU资源不足
print(f"这是当前窗口句柄{wd.window_handles}")
......@@ -105,7 +106,7 @@ class Unified_Platform_0001:
sleep(2)
# 切换窗口至新建会议的窗口
print(f"这是当前窗口句柄{wd.window_handles}")
wd.switch_to.window(wd.window_handles[1])
wd.switch_to.window(wd.window_handles[2])
print(f"这是跳转后的窗口句柄{wd.window_handles}")
# 选择会议室
safe_click((By.XPATH, "//div[@class='meeting_area']//div[@class='el-table__fixed-header-wrapper']//div[1]//label[1]//span[1]//span[1]"),wd)
......@@ -119,9 +120,9 @@ class Unified_Platform_0001:
sleep(10)
safe_click((By.XPATH, "//span[contains(text(),'查看详情')]"),wd)
sleep(5)
print(f"这是当前窗口句柄{wd.window_handles}")
wd.switch_to.window(wd.window_handles[2])
print(f"这是跳转后的窗口句柄{wd.window_handles}")
# print(f"这是当前窗口句柄{wd.window_handles}")
# wd.switch_to.window(wd.window_handles[2])
# print(f"这是跳转后的窗口句柄{wd.window_handles}")
sleep(5)
# 获取会议详情截图信息
......
import sys
import os
from appium.webdriver.common.appiumby import AppiumBy
from 预定系统.Base.app_base import *
# 获取当前脚本的绝对路径
current_dir = os.path.dirname(os.path.abspath(__file__))
# 构建预定系统的绝对路径
预定系统_path = os.path.abspath(os.path.join(current_dir, '..','..','..','..'))
# 添加路径
sys.path.append(预定系统_path)
# 导入模块
from 预定系统.Base.base import *
class Unified_Platform_Terminal_0001:
tags = ['展厅巡检','统一平台系统巡检','终端入会']
def teststeps(self):
app_drive = None
try:
# 初始化应用驱动,连接到指定的设备和应用
app_drive = app_setup_driver("Android", "7.1.2", "127.0.0.1:62001", "com.tencent.wemeet.app",
".StartupActivity", "127.0.0.1:62001")
app_drive.implicitly_wait(20) # 设置缺省等待时间
# 使用显式等待来等待元素出现
logging.info("等待登录页加载...")
# 定位第一场会议按钮元素,并点击按钮
logging.info("尝试定位【会议名称】按钮元素,并点击按钮")
meeting_button = app_drive.find_element(AppiumBy.XPATH,
"/hierarchy/android.widget.FrameLayout/android.widget.LinearLayout/android.widget.FrameLayout/android.widget.LinearLayout/android.widget.FrameLayout/android.widget.FrameLayout/android.widget.FrameLayout/android.widget.LinearLayout/androidx.viewpager.widget.ViewPager/android.view.ViewGroup/android.widget.LinearLayout[1]/android.view.ViewGroup/android.widget.RelativeLayout/androidx.recyclerview.widget.RecyclerView/android.view.ViewGroup[2]/android.view.ViewGroup/androidx.appcompat.widget.LinearLayoutCompat/android.view.ViewGroup/android.widget.TextView")
logging.info("定位会议成功")
# 点击【加入会议】按钮
meeting_button.click()
logging.info("点击【会议】按钮成功")
sleep(2)
# 点击【加入会议】按钮
logging.info("尝试定位【加入会议】按钮元素,并点击按钮")
join_meeting_button = app_drive.find_element(AppiumBy.XPATH,
"/hierarchy/android.widget.FrameLayout/android.widget.LinearLayout/android.widget.FrameLayout/android.widget.LinearLayout/android.widget.FrameLayout/android.view.ViewGroup/androidx.appcompat.widget.LinearLayoutCompat/androidx.appcompat.widget.LinearLayoutCompat/android.widget.TextView")
logging.info("定位【加入会议】按钮成功")
join_meeting_button.click()
logging.info("点击【加入会议】按钮成功")
sleep(8)
# 会议开始后,截取会议画面
app_drive.get_screenshot_as_file(
r"D:\GithubData\自动化\ubains-module-test\预定系统\reports\imgs\Exhibit_Inspect\Tx_meeting\会场画面截屏.png")
sleep(8)
# 退出会议
app_drive.back()
sleep(3)
meeting_quit_button = app_drive.find_element(AppiumBy.XPATH,
"/hierarchy/android.widget.FrameLayout/android.widget.LinearLayout/android.widget.FrameLayout/android.widget.LinearLayout/android.widget.FrameLayout/android.widget.ScrollView/android.widget.RelativeLayout/android.widget.RelativeLayout/android.widget.LinearLayout/android.widget.RelativeLayout[2]/android.widget.TextView")
sleep(1)
meeting_quit_button.click()
sleep(4)
except Exception as e:
# 捕获并记录任何发生的错误
logging.error(f"发生错误: {e}", exc_info=True)
finally:
# 确保驱动程序在测试结束后正确关闭
if app_drive:
app_drive.quit()
logging.info("驱动程序已退出。")
\ No newline at end of file
......@@ -23,8 +23,8 @@ def suite_setup():
wd = GSTORE['wd']
STEP(2, "登录系统")
safe_send_keys((By.XPATH, "//input[@placeholder='手机号/用户名/邮箱']"),"admin",wd)
safe_send_keys((By.XPATH, "//input[@placeholder='密码']"),"Ubains@98765",wd)
safe_send_keys((By.XPATH, "//input[@placeholder='手机号/用户名/邮箱']"),"admin@czj",wd)
safe_send_keys((By.XPATH, "//input[@placeholder='密码']"),"Ubains@54321",wd)
safe_send_keys((By.XPATH, "//input[@placeholder='图形验证']"),"csba",wd)
safe_click((By.XPATH, "//span[@class='el-checkbox__inner']"),wd)
sleep(2)
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论