selenium2 頁面對象類

2021-07-02 17:08 更新

頁面對象模型旨在給每一個Web頁面創(chuàng)造一個對象。運用這個技術(shù)我們可以在測試代碼和技術(shù)實現(xiàn)之間創(chuàng)建一個分離層,?page.py?會是這樣的:

from element import BasePageElement
from locators import MainPageLocators

class SearchTextElement(BasePageElement):
    """這個類從指定的定位器里獲取到搜索文本"""

    #已經(jīng)輸入搜索字符串的搜索框的定位器
    locator = 'q'


class BasePage(object):
    """初始化所有頁面都會調(diào)用的基本頁類"""

    def __init__(self, driver):
        self.driver = driver


class MainPage(BasePage):
    """主頁操作方法放這里"""

    #定義一個變量存放檢索文本
    search_text_element = SearchTextElement()

    def is_title_matches(self):
        """驗證硬編碼字符"python"出現(xiàn)在頁面標(biāo)題里"""
        return "Python" in self.driver.title

    def click_go_button(self):
        """觸發(fā)搜索功能"""
        element = self.driver.find_element(*MainPageLocators.GO_BUTTON)
        element.click()


class SearchResultsPage(BasePage):
    """搜索結(jié)果頁操作方法放這里"""

    def is_results_found(self):
        # 或許應(yīng)該在具體的頁面元素里搜索文本,不過目前為止這樣運行沒什么問題
        return "No results found." not in self.driver.page_source


以上內(nèi)容是否對您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號
微信公眾號

編程獅公眾號