selenium2 頁(yè)面對(duì)象類

2021-07-02 17:08 更新

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

from element import BasePageElement
from locators import MainPageLocators

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

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


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

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


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

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

    def is_title_matches(self):
        """驗(yàn)證硬編碼字符"python"出現(xiàn)在頁(yè)面標(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é)果頁(yè)操作方法放這里"""

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


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

掃描二維碼

下載編程獅App

公眾號(hào)
微信公眾號(hào)

編程獅公眾號(hào)