我最近潛心使用硒和頁面對象模型來測試我的C#(與SpecFlow耦合在一起)。pagemodel硒測試的結構
但是,在我的一個案例中,我對頁面對象模型的結構有點不確定。
舉個例子,我有一個登記表,跨越多個頁(填寫詳細信息,按下一步,填寫詳細信息,按下一首等)
難道是創建一個頁面的最佳實踐對象模型爲流中的每個頁面,還是將全部收集到一個頁面對象模型中?
香料的東西,在某些情況下,表單元素可能會移動到流中的其他網頁(根據最終用戶設置)
我最近潛心使用硒和頁面對象模型來測試我的C#(與SpecFlow耦合在一起)。pagemodel硒測試的結構
但是,在我的一個案例中,我對頁面對象模型的結構有點不確定。
舉個例子,我有一個登記表,跨越多個頁(填寫詳細信息,按下一步,填寫詳細信息,按下一首等)
難道是創建一個頁面的最佳實踐對象模型爲流中的每個頁面,還是將全部收集到一個頁面對象模型中?
香料的東西,在某些情況下,表單元素可能會移動到流中的其他網頁(根據最終用戶設置)
的Page對象是一個衆所周知的設計模式,由自動化工程師廣泛接受,爲應用程序的每個頁面創建單獨的類文件,以將所有元素分組爲屬性及其行爲/業務功能作爲類的方法。但它總是不是一個好主意,尤其是當頁面有更多/不同的元素集合/複雜元素,比如網格/日曆窗口小部件/ HTML表格等。
當您試圖將所有元素頁面在一個單獨的頁面類中,它變得太大,無法讀取,維護等。該類可能包含太多的處理責任。它可以重組並分解成更小的類。
我希望我的頁面對象能夠滿足負責的單一責任。
通過這樣做,您將最終獲得更多的頁面分類 - 但是您的測試將會非常可讀,可靠且強大。
您可以在Java中看到這些示例。但我相信你會明白這一點。
http://www.testautomationguru.com/arquillian-graphene-page-fragments/