![第6章 PO模式電子課件_第1頁(yè)](http://file4.renrendoc.com/view6/M02/25/19/wKhkGWeAu1qAAhzQAACkbktqjvY212.jpg)
![第6章 PO模式電子課件_第2頁(yè)](http://file4.renrendoc.com/view6/M02/25/19/wKhkGWeAu1qAAhzQAACkbktqjvY2122.jpg)
![第6章 PO模式電子課件_第3頁(yè)](http://file4.renrendoc.com/view6/M02/25/19/wKhkGWeAu1qAAhzQAACkbktqjvY2123.jpg)
![第6章 PO模式電子課件_第4頁(yè)](http://file4.renrendoc.com/view6/M02/25/19/wKhkGWeAu1qAAhzQAACkbktqjvY2124.jpg)
![第6章 PO模式電子課件_第5頁(yè)](http://file4.renrendoc.com/view6/M02/25/19/wKhkGWeAu1qAAhzQAACkbktqjvY2125.jpg)
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
第6章PO模式《自動(dòng)化測(cè)試應(yīng)用教程(Web+App)》學(xué)習(xí)目標(biāo)/Target了解PO模式的簡(jiǎn)介,能夠簡(jiǎn)述PO模式的概念掌握PO模式的案例實(shí)戰(zhàn),能夠測(cè)試TPshop開源商城網(wǎng)站的登錄功能章節(jié)概述/Summary在測(cè)試Web項(xiàng)目的過程中,由于在Web項(xiàng)目中需要測(cè)試的頁(yè)面比較多,有時(shí)會(huì)出現(xiàn)多個(gè)頁(yè)面中代碼冗余的情況,例如多個(gè)頁(yè)面的測(cè)試代碼中都有定位同一個(gè)元素的代碼,如果定位的元素發(fā)生了變化,則需要修改多個(gè)頁(yè)面中定位該元素的代碼,這樣不僅增加了測(cè)試人員的工作量,而且不便于代碼的維護(hù)。為了提高測(cè)試代碼的可維護(hù)性和可讀性,可以使用PO模式將測(cè)試代碼中的冗余代碼進(jìn)行封裝并分層。本章將對(duì)PO模式的內(nèi)容進(jìn)行詳細(xì)講解。目錄/Contents01PO模式簡(jiǎn)介02PO模式的案例實(shí)戰(zhàn)PO模式簡(jiǎn)介6.16.1.1PO模式的概念
先定一個(gè)小目標(biāo)!了解PO模式的簡(jiǎn)介,能夠簡(jiǎn)述PO模式的概念6.1.1PO模式的概念PO(PageObject,頁(yè)面對(duì)象)模式主要是將程序中的頁(yè)面元素定位和元素操作封裝成一個(gè)頁(yè)面類,在該類中實(shí)現(xiàn)頁(yè)面對(duì)象和測(cè)試用例的分離,該模式的核心是對(duì)頁(yè)面元素的封裝,從而減少程序中的冗余代碼,提高測(cè)試代碼的可維護(hù)性和可讀性。6.1.1PO模式的概念對(duì)象庫(kù)層用于封裝定位頁(yè)面元素的方法操作層用于封裝對(duì)元素進(jìn)行操作的方法業(yè)務(wù)層用于封裝將一個(gè)或多個(gè)元素操作組合起來完成一個(gè)業(yè)務(wù)功能的方法PO模式6.1.2PO模式的優(yōu)缺點(diǎn)
先定一個(gè)小目標(biāo)!了解PO模式的優(yōu)缺點(diǎn),能夠簡(jiǎn)述PO模式的優(yōu)點(diǎn)和缺點(diǎn)6.1.2PO模式的優(yōu)缺點(diǎn)當(dāng)測(cè)試代碼使用PO模式后,會(huì)對(duì)測(cè)試程序中的重復(fù)代碼抽取出來,放在一個(gè)工具類中,便于后續(xù)對(duì)這些代碼進(jìn)行復(fù)用,從而提高測(cè)試代碼的復(fù)用性,減少程序中的冗余代碼。(1)提高代碼的復(fù)用性PO模式與傳統(tǒng)模式相比有以下3個(gè)優(yōu)點(diǎn),具體介紹如下。PO模式可以將定位頁(yè)面元素與頁(yè)面操作的代碼封裝在指定的頁(yè)面對(duì)象中,并且測(cè)試用例與頁(yè)面對(duì)象也是分離的狀態(tài),這樣更容易讓測(cè)試人員快速找到指定頁(yè)面的代碼和測(cè)試用例,從而提高了代碼的可讀性和可維護(hù)性。(2)提高代碼的可讀性和可維護(hù)性6.1.2PO模式的優(yōu)缺點(diǎn)PO模式減少了測(cè)試程序中的代碼冗余,從而減少了測(cè)試人員的工作量,同時(shí)PO模式還采用了業(yè)務(wù)流程與頁(yè)面元素操作分離的模式,使測(cè)試代碼便于維護(hù)和擴(kuò)展。如果后續(xù)想要修改或增加測(cè)試用例,則不需要耗費(fèi)很多時(shí)間和人員去修改或擴(kuò)展測(cè)試代碼,從而降低測(cè)試程序的維護(hù)成本。(3)降低程序的維護(hù)成本6.1.2PO模式的優(yōu)缺點(diǎn)任何事物都有兩面性,PO模式也不例外,它除了有3個(gè)優(yōu)點(diǎn)之外,還有一個(gè)缺點(diǎn),即PO模式會(huì)造成測(cè)試代碼結(jié)構(gòu)比較復(fù)雜,從而導(dǎo)致一次性的腳本代碼效率不高,這是由于測(cè)試代碼根據(jù)PO模式的流程進(jìn)行了模塊化處理。PO模式的案例實(shí)戰(zhàn)6.26.2.1商城登錄功能簡(jiǎn)介
先定一個(gè)小目標(biāo)!了解商城登錄功能簡(jiǎn)介,能夠編寫3條功能的測(cè)試用例6.2.1商城登錄功能簡(jiǎn)介當(dāng)對(duì)TPshop開源商城網(wǎng)站的登錄功能進(jìn)行自動(dòng)化測(cè)試時(shí),首先需要進(jìn)入商城首頁(yè),單擊商城首頁(yè)左上角的“登錄”鏈接,即可進(jìn)入到登錄頁(yè)面,如下圖所示。6.2.1商城登錄功能簡(jiǎn)介測(cè)試人員在測(cè)試登錄頁(yè)面中的登錄功能時(shí),首先需要設(shè)計(jì)該功能的測(cè)試用例,例如,登錄成功、密碼錯(cuò)誤、驗(yàn)證碼錯(cuò)誤、賬號(hào)不存在等。6.2.1商城登錄功能簡(jiǎn)介ID優(yōu)先級(jí)測(cè)試功能測(cè)試標(biāo)題預(yù)置條件步驟描述測(cè)試數(shù)據(jù)預(yù)期結(jié)果實(shí)際結(jié)果01L0登錄賬號(hào)不存在打開商城首頁(yè),進(jìn)入登錄頁(yè)面1.輸入賬號(hào);2.輸入密碼;3.輸入驗(yàn)證碼;4.單擊“登錄”按鈕賬號(hào)碼:123456驗(yàn)證碼:8888登錄失敗,頁(yè)面提示:賬號(hào)不存在02L0登錄密碼錯(cuò)誤打開商城首頁(yè),進(jìn)入登錄頁(yè)面1.輸入賬號(hào);2.輸入密碼;3.輸入驗(yàn)證碼;4.單擊“登錄”按鈕賬號(hào)碼:1234567驗(yàn)證碼:8888登錄失敗,頁(yè)面提示:密碼錯(cuò)誤03L0登錄用戶名不能為空打開商城首頁(yè),進(jìn)入登錄頁(yè)面1.輸入密碼;2.輸入驗(yàn)證碼;3.單擊“登錄”按鈕賬號(hào):密碼:123456驗(yàn)證碼:8888登錄失敗,頁(yè)面提示:用戶名不能為空登錄功能的3條測(cè)試用例的相關(guān)信息如下表所示。6.2.2創(chuàng)建工具類UtilsDriver
先定一個(gè)小目標(biāo)!掌握工具類的創(chuàng)建,能夠創(chuàng)建UtilsDriver工具類6.2.2創(chuàng)建工具類UtilsDriver當(dāng)在程序中測(cè)試商城登錄功能時(shí),需要多次獲取瀏覽器驅(qū)動(dòng)對(duì)象、彈出框消息和退出瀏覽器驅(qū)動(dòng)對(duì)象,為了減少程序中的冗余代碼,需要將獲取瀏覽器驅(qū)動(dòng)對(duì)象的方法、獲取彈出框消息的方法和退出瀏覽器驅(qū)動(dòng)對(duì)象的方法抽取出來存放在創(chuàng)建好的UtilsDriver類中,該類被稱為工具類,它可以存放后續(xù)程序中需要多次使用的與瀏覽器驅(qū)動(dòng)有關(guān)的其他方法。6.2.2創(chuàng)建工具類UtilsDriver首先在程序中創(chuàng)建utils.py文件,然后在該文件中創(chuàng)建工具類UtilsDriver,具體代碼如下。[單擊查看源碼]6.2.3創(chuàng)建基類BasePage與BaseHandle
先定一個(gè)小目標(biāo)!掌握基類的創(chuàng)建,能夠創(chuàng)建BasePage與BaseHandle基類當(dāng)測(cè)試TPshop開源商城網(wǎng)站的登錄功能時(shí),會(huì)用到商城的首頁(yè)和登錄頁(yè)面。在測(cè)試程序中,PO模式會(huì)將商城首頁(yè)和登錄頁(yè)面中的邏輯代碼分為對(duì)象庫(kù)層、操作層和業(yè)務(wù)層,由于商城首頁(yè)和登錄頁(yè)面的對(duì)象庫(kù)層和操作層有相同的代碼,例如,定位元素的代碼、元素輸入的操作代碼等。為了減少程序中的冗余代碼,需要將商城首頁(yè)和登錄頁(yè)面中相同的代碼抽取出來存放在創(chuàng)建好的BasePage類和BaseHandle類中,這2個(gè)類被稱為基類。6.2.3創(chuàng)建基類BasePage與BaseHandle6.2.3創(chuàng)建基類BasePage與BaseHandle首先在程序中創(chuàng)建base文件夾,然后在該文件夾中創(chuàng)建base_page.py文件,最后在base_page.py文件中分別創(chuàng)建對(duì)象庫(kù)層的基類BasePage和操作層的基類BaseHandle。
base_page.py文件的具體代碼如下。[單擊查看源碼]6.2.4商城首頁(yè)的PO模式
先定一個(gè)小目標(biāo)!掌握商城首頁(yè)的PO模式,能夠使用PO模式編寫商城首頁(yè)的邏輯代碼6.2.4商城首頁(yè)的PO模式由于測(cè)試商城登錄功能時(shí),會(huì)涉及商城首頁(yè)頁(yè)面,所以需要在商城首頁(yè)的邏輯代碼中使用PO模式,按照PO模式的3層架構(gòu),將商城首頁(yè)中的代碼分別封裝為對(duì)象庫(kù)層、操作層和業(yè)務(wù)層,每個(gè)層都是一個(gè)類。6.2.4商城首頁(yè)的PO模式首先在程序中創(chuàng)建page文件夾,然后在該文件夾中創(chuàng)建page_home.py文件,最后在page_home.py文件中分別創(chuàng)建PageHome類、HandleHome類和HomeProxy類,
page_home.py文件的具體代碼如下。[單擊查看源碼]6.2.5登錄頁(yè)面的PO模式
先定一個(gè)小目標(biāo)!掌握登錄頁(yè)面的PO模式,能夠使用PO模式編寫登錄頁(yè)面的邏輯代碼6.2.5登錄頁(yè)面的PO模式登錄頁(yè)面的PO模式與商城首頁(yè)的PO模式類似,都是按照PO模式的3層架構(gòu),將頁(yè)面中的代碼分別封裝為對(duì)象庫(kù)層、操作層和業(yè)務(wù)層,每個(gè)層都是1個(gè)類。6.2.5登錄頁(yè)面的PO模式首先在程序的page文件夾中創(chuàng)建操作登錄頁(yè)面的文件page_login.py,然后在該文件中分別創(chuàng)建LoginPage類、LoginHandle類和LoginProxy類,
page_login.py文件的具體代碼如下。[單擊查看源碼]6.2.6創(chuàng)建登錄功能的測(cè)試用例
先定一個(gè)小目標(biāo)!掌握登錄功能測(cè)試用例的創(chuàng)建,能夠編寫登錄功能的測(cè)試用例代碼6.2.6創(chuàng)建登錄功能的測(cè)試用例首先在程序中創(chuàng)建一個(gè)scripts文件夾,然后在該文件夾中創(chuàng)建test_login.py文件,最后在test_login.py文件中創(chuàng)建測(cè)試類TestLogin,在該類中根據(jù)登錄功能的3個(gè)測(cè)試用例,定義了3個(gè)測(cè)試方法,分別是test_login_01()、test_lo
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年血液透析機(jī)(人工腎)合作協(xié)議書
- 2025年基因工程乙型肝炎疫苗(酵母)合作協(xié)議書
- 2024-2025學(xué)年河南省鄭州市管城區(qū)四年級(jí)(上)期末數(shù)學(xué)試卷
- 2025年排氣系統(tǒng)管件合作協(xié)議書
- 人教版期中測(cè)試卷-四年級(jí)數(shù)學(xué)下冊(cè)(培優(yōu)卷)(含解析)
- 2025年九年級(jí)教研組年終總結(jié)樣本(3篇)
- 2025年乳膠漆粉刷施工合同協(xié)議(2篇)
- 2025年產(chǎn)品買賣合同范文(2篇)
- 2025年二手房分期購(gòu)房合同(三篇)
- 2025年個(gè)人車位租賃合同參考模板(三篇)
- YS/T 34.1-2011高純砷化學(xué)分析方法電感耦合等離子體質(zhì)譜法(ICP-MS)測(cè)定高純砷中雜質(zhì)含量
- LY/T 2016-2012陸生野生動(dòng)物廊道設(shè)計(jì)技術(shù)規(guī)程
- 松下panasonic-視覺說明書pv200培訓(xùn)
- 單縣煙草專賣局QC課題多維度降低行政處罰文書出錯(cuò)率
- 健康養(yǎng)生課件
- 混雜控制系統(tǒng)課件
- 運(yùn)動(dòng)技能學(xué)習(xí)原理課件
- 《QHSE體系培訓(xùn)》課件
- 公共關(guān)系學(xué)完整教學(xué)課件
- 原子物理學(xué)第五章-多電子原子:泡利原理
- 35kV輸電線路工程旋挖鉆孔專項(xiàng)施工方案
評(píng)論
0/150
提交評(píng)論