UI自动化所有界面加载检查

python3.0 加载所有菜单栏的页面,含子页面可执行的代码

import selenium
from selenium import webdriver
from time import sleep

from selenium.webdriver.common.by import By
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC
from selenium.common.exceptions import NoSuchElementException, WebDriverException


# 登录模块
def auto_login(username, password):
    url1 = 'XXX'
    driver = webdriver.Chrome()
    driver.maximize_window()
    driver.get(url1)
    # 找到输入用户名和密码的元素并填充
    username_field = driver.find_element(By.XPATH, '// input[ @ name = "username"]')
    password_field = driver.find_element(By.XPATH, '// input[ @ name = "passWord"]')
    username_field.send_keys(username)
    password_field.send_keys(password)

    # 找到登录按钮并点击
    login_button = driver.find_element(By.XPATH, '// button[@type="button"]')
    login_button.click()
    sleep(1)
    # 检查登录是否成功
    current_url = driver.current_url
    if current_url == 'XXX':
        print("登录成功!")
        # 网站相关操作或页面跳转
    else:
        print("登录失败!")
    # driver.quit()

    wait = WebDriverWait(driver, 10)
    try:
        # 定位菜单栏
        menu_bar = wait.until(EC.presence_of_element_located((By.XPATH, "// ul[@role='menubar']//span")))

        # 遍历菜单项
        menu_items = menu_bar.find_elements(By.XPATH, "// ul[@role='menubar']//span")
        for item in menu_items:
            try:
                # 点击菜单项
                item.click()
                print(item.text)
                sleep(2)
                # 检查页面是否出现错误
                error_message = driver.find_element(By.CLASS_NAME, "error-message")
                print(f"Error found on page: {error_message.text}")
            except NoSuchElementException:
                # 如果没有找到错误信息,继续
                pass
            except WebDriverException as e:
                # 如果有其他WebDriver异常,打印错误信息
                print(f"WebDriverException: {e}")
    finally:
        # 关闭浏览器
        driver.quit()


if __name__ == '__main__':
    auto_login('XXX', 'XXXX')
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值