封装查找元素以及集成日志输出,Base模块

Posted cesarezhang

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了封装查找元素以及集成日志输出,Base模块相关的知识,希望对你有一定的参考价值。

关于查找元素封装,Base模块

"""
Selenium 封装基类

封装查找元素以及集成日志输出
"""

from htmlReport import logger
from selenium import webdriver
from selenium.webdriver.remote.webelement import WebElement


class Base(object):
    def __init__(self, driver: webdriver.Remote = None):
        self.driver = driver
        self.logger = logger()

    def find_element(self, locator: tuple) -> WebElement:
        """查找单个元素

        :param locator: 定位器(by=By.ID, value=None)
        :return: WebElement
        """
        self.logger.info(f"查找元素:locator")
        try:
            element = self.driver.find_element(*locator)
        except Exception:
            self.logger.info("查找元素失败")
            raise
        else:
            self.logger.info("查找元素成功")
        return element

    def find_elements(self, locator: tuple):
        """查找元素集合

        :param locator: 定位器(by=By.ID, value=None)
        :return: 元素对象集合
        :rtype: list of WebElement
        """
        self.logger.info(f"查找元素集合:locator")
        elements = self.driver.find_elements(*locator)
        self.logger.info(f"查找到len(elements)个元素")
        return elements

 

以上是关于封装查找元素以及集成日志输出,Base模块的主要内容,如果未能解决你的问题,请参考以下文章

WebRTC Native M96 SDK接口封装--setLogFile设置 SDK 输出的日志文件

WebRTC Native M96 SDK接口封装--setLogFile设置 SDK 输出的日志文件

WebRTC Native M96 SDK接口封装--setLogFile设置 SDK 输出的日志文件

自动化框架--log日志封装

Python 通用日志模块

WindowsGUI自动化测试框架搭建-日志模块封装(logging模块)