UI自动化测试-basepage实现和封装

本文介绍了UI自动化测试中BasePage类的作用和优化。BasePage用于封装selenium的浏览器操作,提供易用的接口,简化页面类如Home_page和Login_page的代码。当selenium更新时,只需维护BasePage。通过继承BasePage,可以减少重复代码,提高代码可维护性。文章展示了login_page和home_page的改进,强调了继承BasePage后的方法调用和测试用例的兼容性。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

在上上篇文章中我们的代码优化还没完成,此篇文章就是介绍优化点的第4条:base的优化

basepage的作用:

  • 对selenium封装浏览器操作进行二次封装,让整个浏览器的操作变的更加容易使用(不用再编写那么长或难记的一些方法),直接让其他页面类如home_page,login_page继承BasePage即可
  • 如果selenium升级或改版了,方法改变了,我们只需要维护BasePage类中的方法即可

basepage.py可以存放到common目录或pages目录中,我这里就放到了pages目录了

basepage.py代码如下:

from selenium.webdriver import Chrome, ActionChains
from selenium.webdriver.common.keys import Keys
from selenium.webdriver.support.wait import WebDriverWait
from selenium.webdriver.support import expected_conditions as when
from setting import config


class BasePage:
    host = config.host

    # driver: Chrome的作用是使用driver.时会提示相关的方法
    def __init__(self, browser: Chrome):
        self.browser = browser

    def goto(self, url):
        """去哪个url地址"""
        if url.find('http://') != -1:
            return self.browser.get(url)
        return self.browser.get(self.host + url)

    def fill(self, locator, words):
        """输入框内输入内容"""
        el = self.browser.find_element(*locator)
        el.send_keys(words)

    def click(self, locator):
        """单击"""
        wait = WebDriverWait(self.browser, timeout=10)
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值