# 這是基本類
from selenium import webdriver
class basepage(object):
browser = webdriver.chrome()
# 建構函式
def __init__(self,browser):
self.browser = browser
# 訪問url
def visit(self,url):
self.browser.get(url)
# 元素定位
def locator(self,locator):
return self.browser.find_element(*locator)
# 關閉
def quit_browser(self):
self.browser.quit()
# 頁面物件類
# sear_page 檔案:將搜尋的頁面做成乙個完整頁面物件
from basepage.base_page import basepage
from selenium import webdriver
from selenium.webdriver.common.by import by
# 繼承於base_page 繼承類
class searchpage(basepage):
# 因為乙個頁面的主要功能不會變 所以就可以直接進行寫死
# 搜尋框 如果頁面元素出現變更 可以把定位方式換為xpath
input_id = (by.id,'kw')
click_id = (by.id,'su')
# 對輸入框進行內容的輸入
def input_text(self,input_text):
self.locator(self.input_id).send_keys(input_text)
# 點選查詢按鈕 實現本次搜尋
def click_element(self):
self.locator(self.click_id).click()
# 當前頁 除錯檢驗
def check(self,url,input_text):
self.visit(url)
self.input_text(input_text)
self.click_element()
if __name__ == '__main__':
url = ''
browser = webdriver.chrome()
sp = searchpage(browser)
# 因為加入除錯函式 就可以在當前頁進行除錯
# sp.visit(url)
# sp.input_text('老祝頭')
# sp.click_element()
sp.check(url,'老祝頭')
# 這是基本類
python selenium設計模式POM
pom模式是什麼 pom模式的 目錄組織示例 pom的優勢 pom提供了一種在ui層操作 業務流程與驗證分離的模式,這使得測試 變得更加清晰和高可讀性 物件庫與用例分離,使得我們更好的復用物件,甚至能與不同的工具進行深度結合應用 可復用的頁面方法 會變得更加優化 更加有效的命名方式使得我們更加清晰的...
Python Selenium設計模式 POM
import time driver webdriver.firefox driver.implicitly wait 30 driver.get driver.find element by id kw send keys selenium driver.find element by id su...
Po模式和關鍵字模式
what?po模式 page object model 是一種設計思想,是為了解決自動化測試過程中隨著 量的增加導致的大量 難以維護 難以擴充套件 可讀性極差等災難性的事件的方案,所謂page object及頁面物件,頁面物件是哪些東西呢?比如乙個按鈕是乙個物件,乙個頁面也是乙個物件.實際的應用當中...