中文亚洲精品无码_熟女乱子伦免费_人人超碰人人爱国产_亚洲熟妇女综合网

當(dāng)前位置: 首頁(yè) > news >正文

東莞做網(wǎng)站哪個(gè)公司最好google chrome網(wǎng)頁(yè)版

東莞做網(wǎng)站哪個(gè)公司最好,google chrome網(wǎng)頁(yè)版,做網(wǎng)站安全維護(hù)是什么東東,從零學(xué)習(xí)做網(wǎng)站目錄 前言: 一、什么是抽象BasePage 二、BasePage中的屬性和方法 三、BasePage中的代碼實(shí)現(xiàn) 四、抽象Page對(duì)象 五、測(cè)試用例 六、總結(jié) 前言: 對(duì)于測(cè)試工程師來說,WEB自動(dòng)化測(cè)試是非常重要的一部分。然而,WEB自動(dòng)化測(cè)試的開…

?目錄

前言:

一、什么是抽象BasePage

二、BasePage中的屬性和方法

三、BasePage中的代碼實(shí)現(xiàn)

四、抽象Page對(duì)象

五、測(cè)試用例

六、總結(jié)


前言:

對(duì)于測(cè)試工程師來說,WEB自動(dòng)化測(cè)試是非常重要的一部分。然而,WEB自動(dòng)化測(cè)試的開發(fā)成本較高,維護(hù)難度也很大。因此,如何規(guī)范的開發(fā)WEB自動(dòng)化測(cè)試成為了每個(gè)測(cè)試工程師需要思考的問題之一。本文將介紹如何使用Python和Selenium Webdriver來封裝WEB自動(dòng)化測(cè)試框架,其中包括如何抽象BasePage。

一、什么是抽象BasePage

通常來說,我們?cè)陂_發(fā)WEB自動(dòng)化測(cè)試框架時(shí)需要?jiǎng)?chuàng)建許多頁(yè)面對(duì)象(Page Object),比如登錄頁(yè)面,注冊(cè)頁(yè)面,首頁(yè)頁(yè)面等等。每個(gè)頁(yè)面對(duì)象都需要有很多方法,如輸入框輸入數(shù)據(jù),點(diǎn)擊按鈕等。為了避免重復(fù)代碼的產(chǎn)生,我們可以抽象出一個(gè)BasePage。

BasePage是一個(gè)基類,包含通用的方法和屬性,所有的頁(yè)面對(duì)象都繼承BasePage,并通過方法重寫來實(shí)現(xiàn)自身的方法和屬性,這使得代碼更為簡(jiǎn)潔和規(guī)范化。

二、BasePage中的屬性和方法

屬性包括:driver(瀏覽器驅(qū)動(dòng)實(shí)例)、url(當(dāng)前頁(yè)面的URL)、title(當(dāng)前頁(yè)面的標(biāo)題)。

方法包括:open(打開頁(yè)面)、find_element、find_elements、click和input。

其中,find_element和find_elements是頁(yè)面元素定位的方法,click是點(diǎn)擊元素的方法,input是向元素輸入文本的方法。

三、BasePage中的代碼實(shí)現(xiàn)

from selenium.webdriver.common.by import By
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as ECclass BasePage(object):def __init__(self, driver):self.driver = driverself.url = "https://www.example.com"self.title = "Example"def open(self):self.driver.get(self.url)assert self.title in self.driver.titledef find_element(self, *loc):return self.driver.find_element(*loc)def find_elements(self, *loc):return self.driver.find_elements(*loc)def click(self, *loc):element = WebDriverWait(self.driver, 10).until(EC.element_to_be_clickable(loc))element.click()def input(self, *loc, text):element = WebDriverWait(self.driver, 10).until(EC.presence_of_element_located(loc))element.clear()element.send_keys(text)

四、抽象Page對(duì)象

在實(shí)際開發(fā)中,我們需要?jiǎng)?chuàng)建具體的Page對(duì)象,繼承BasePage,并重寫父類的屬性和方法。

以登錄頁(yè)面為例:

class LoginPage(BasePage):def __init__(self, driver):super(LoginPage, self).__init__(driver)self.url = "https://www.example.com/login"self.title = "Login"def input_username(self, username):input_loc = (By.ID, "username")self.input(input_loc, username)def input_password(self, password):input_loc = (By.ID, "password")self.input(input_loc, password)def click_submit(self):button_loc = (By.ID, "submit")self.click(button_loc)

五、測(cè)試用例

在實(shí)際測(cè)試過程中,我們使用Page對(duì)象來執(zhí)行測(cè)試用例。

例如:

from selenium import webdriver
from pageobjects import LoginPage# 創(chuàng)建瀏覽器對(duì)象
driver = webdriver.Chrome()# 打開登錄頁(yè)面
login_page = LoginPage(driver)
login_page.open()# 輸入用戶名
login_page.input_username("testuser")# 輸入密碼
login_page.input_password("testpassword")# 點(diǎn)擊登錄按鈕
login_page.click_submit()# 斷言是否登錄成功(例如判斷是否跳轉(zhuǎn)到首頁(yè))
assert "Home" in driver.title# 關(guān)閉瀏覽器
driver.quit()

六、總結(jié)

在WEB自動(dòng)化測(cè)試框架中,抽象BasePage是一個(gè)非常重要的部分,可以避免重復(fù)代碼的產(chǎn)生,使得代碼更為簡(jiǎn)潔和規(guī)范化。在實(shí)際開發(fā)中,我們需要?jiǎng)?chuàng)建具體的Page對(duì)象,繼承BasePage,并重寫父類的屬性和方法。使用Page對(duì)象來執(zhí)行測(cè)試用例可以有效地提高代碼的可讀性和可維護(hù)性。

同時(shí),在編寫測(cè)試用例時(shí),需要注意以下幾點(diǎn):

1. 盡量避免硬編碼(Hard-coding),使用常量或配置文件代替。

2. 對(duì)錯(cuò)誤情況進(jìn)行處理,例如元素定位失敗等,不要直接拋出異常。

3. 封裝公共方法,例如登錄方法和退出方法等,方便測(cè)試用例的編寫。

4. 使用斷言(assert)來判斷測(cè)試結(jié)果是否符合預(yù)期,例如判斷頁(yè)面標(biāo)題是否正確、元素是否存在等。

總的來說,抽象BasePage可以讓我們更輕松、高效地編寫WEB自動(dòng)化測(cè)試用例,提高測(cè)試質(zhì)量和效率。

?作為一位過來人也是希望大家少走一些彎路,在這里我給大家分享一些自動(dòng)化測(cè)試前進(jìn)之路的必須品,希望能對(duì)你帶來幫助。(WEB自動(dòng)化測(cè)試、app自動(dòng)化測(cè)試、接口自動(dòng)化測(cè)試、持續(xù)集成、自動(dòng)化測(cè)試開發(fā)、大廠面試真題、簡(jiǎn)歷模板等等),相信能使你更好的進(jìn)步!

留【自動(dòng)化測(cè)試】即可
【自動(dòng)化測(cè)試交流】:574737577(備注ccc)http://qm.qq.com/cgi-bin/qm/qr?_wv=1027&k=3Ro31suVzmZQQTuC3pd1DnAqOjZcVkMI&authKey=3LzbiKyASmsZRXGK7rlihB36U4cUmJ1FkwmoupezXCD23%2FnD4mH5mBxDRs4GTCQF&noverify=0&group_code=574737577

http://www.risenshineclean.com/news/23124.html

相關(guān)文章:

  • 城鄉(xiāng)建設(shè)局和住監(jiān)局官網(wǎng)微博seo營(yíng)銷
  • 新思維網(wǎng)站網(wǎng)站建設(shè)公司
  • 南寧模板建站多少錢臨沂seo
  • 南寧自助模板建站服務(wù)網(wǎng)站排名咨詢
  • 設(shè)計(jì)周關(guān)鍵詞優(yōu)化排名seo
  • asp網(wǎng)站鏈接access廣州seo關(guān)鍵詞優(yōu)化是什么
  • 怎么做58同城網(wǎng)站嗎app下載推廣平臺(tái)
  • 如何在百度做網(wǎng)站推廣疫情防控最新通告
  • 北京十大活動(dòng)策劃公司哈爾濱seo優(yōu)化公司
  • 千圖網(wǎng)免費(fèi)素材圖庫(kù)海報(bào)網(wǎng)絡(luò)優(yōu)化工程師前景如何
  • 網(wǎng)站加載模式百度廣告太多
  • 最值錢的域名列表谷歌seo搜索引擎
  • 設(shè)計(jì)一個(gè)完整的靜態(tài)網(wǎng)站漣源網(wǎng)站seo
  • 建站科技公司免費(fèi)發(fā)廣告的軟件
  • 平面設(shè)計(jì)培訓(xùn)班價(jià)格百度seo公司報(bào)價(jià)
  • 幼兒園主題網(wǎng)絡(luò)圖設(shè)計(jì)ppt模板惠州seo優(yōu)化服務(wù)
  • wordpress中英文網(wǎng)站什么平臺(tái)推廣效果最好
  • 手機(jī)兼職的正規(guī)平臺(tái)有哪些如何優(yōu)化網(wǎng)站排名
  • 俄語網(wǎng)站建設(shè)學(xué)電商哪個(gè)培訓(xùn)學(xué)校好
  • 如何創(chuàng)立個(gè)人網(wǎng)站網(wǎng)站收錄怎么弄
  • 企業(yè)網(wǎng)站 wordpress網(wǎng)頁(yè)代碼模板
  • ps模板下載網(wǎng)站新網(wǎng)站秒收錄技術(shù)
  • 網(wǎng)站建設(shè)的主要職責(zé)免費(fèi)網(wǎng)站免費(fèi)
  • 建網(wǎng)站wordpress女生學(xué)網(wǎng)絡(luò)營(yíng)銷這個(gè)專業(yè)好嗎
  • 國(guó)家攝影網(wǎng)站百度發(fā)布信息怎么弄
  • 讓別人做網(wǎng)站需要提供什么長(zhǎng)沙網(wǎng)絡(luò)公關(guān)公司
  • 營(yíng)銷型網(wǎng)站有哪些特點(diǎn)外貿(mào)網(wǎng)站建設(shè) google
  • 網(wǎng)站做數(shù)據(jù)監(jiān)測(cè)寧波網(wǎng)站推廣排名
  • 校園網(wǎng)站設(shè)計(jì)外貿(mào)接單十大網(wǎng)站
  • 嗶哩網(wǎng)站開發(fā)需求分析模板網(wǎng)上推廣