1 PO設(shè)計(jì)模式
什么是設(shè)計(jì)模式?
PO(PageObject)設(shè)計(jì)模式將某個(gè)頁(yè)面的所有元素對(duì)象定位和對(duì)元素對(duì)象的操作封裝成一個(gè) Page 類妄呕,即一個(gè)py文件绪励,并以頁(yè)面為單位來寫測(cè)試用例,實(shí)現(xiàn)頁(yè)面對(duì)象和測(cè)試用例的分離停做,若元素發(fā)生變化蛉腌,只需要進(jìn)入對(duì)應(yīng)的Page類,更新元素定位即可烙丛,不用修改用例。PO模式的設(shè)計(jì)思想與面向?qū)ο笙嗨坪友剩茏寽y(cè)試代碼變得可讀性更好钠右,可維護(hù)性高,復(fù)用性高库北。
PO 模式可以把一個(gè)頁(yè)面分為三個(gè)層級(jí):對(duì)象庫(kù)層爬舰、操作層、業(yè)務(wù)層寒瓦。
對(duì)象庫(kù)層:封裝定位元素的方法。
操作層:封裝對(duì)元素的操作坪仇。
業(yè)務(wù)層:將一個(gè)或多個(gè)操作組合起來完成一個(gè)業(yè)務(wù)功能杂腰。
一條測(cè)試用例可能需要多個(gè)步驟操作元素,將每一個(gè)步驟單獨(dú)封裝成一個(gè)方法椅文,在執(zhí)行測(cè)試用例時(shí)調(diào)用封裝好的方法進(jìn)行操作喂很。
PO 模式的優(yōu)點(diǎn)
·通過頁(yè)面分層,將測(cè)試代碼和被測(cè)試頁(yè)面的頁(yè)面元素及其操作方法進(jìn)行分離皆刺,降低代碼冗余少辣。
·頁(yè)面對(duì)象與用例分離,業(yè)務(wù)代碼與測(cè)試代碼分離,降低耦合性捐迫。
·不同層級(jí)分屬不同用途反浓,降低維護(hù)成本懈玻。
·代碼可閱讀性增強(qiáng)艺栈,整體流程更為清晰罚勾。