|
@@ -1,3 +1,4 @@
|
|
|
|
+# 概述:
|
|
這是用 Python 配合上 Unittest 的專案
|
|
這是用 Python 配合上 Unittest 的專案
|
|
|
|
|
|
Design Pattern 一樣也是 PageObjects
|
|
Design Pattern 一樣也是 PageObjects
|
|
@@ -5,19 +6,19 @@ Design Pattern 一樣也是 PageObjects
|
|
在 lambda 上面預計不會用到 unittest 不過 PageObjects 會繼續使用
|
|
在 lambda 上面預計不會用到 unittest 不過 PageObjects 會繼續使用
|
|
|
|
|
|
# 相關命名規則:
|
|
# 相關命名規則:
|
|
-1. 檔案名稱
|
|
|
|
|
|
+* 檔案名稱
|
|
|
|
|
|
(a) page_Name.py 表示 利用一個 py檔 (建立一個class) 描述 網站上其中一個網頁
|
|
(a) page_Name.py 表示 利用一個 py檔 (建立一個class) 描述 網站上其中一個網頁
|
|
|
|
|
|
(b) test_Name.py 表示 其中一個測試,目前只有自己簽署
|
|
(b) test_Name.py 表示 其中一個測試,目前只有自己簽署
|
|
|
|
|
|
-2. class 名稱
|
|
|
|
|
|
+* class 名稱
|
|
|
|
|
|
(a) page_Name.py 裡面的 class 名稱和檔名一樣
|
|
(a) page_Name.py 裡面的 class 名稱和檔名一樣
|
|
|
|
|
|
(b) 在test當中實例化時,命名的變數會是 Name
|
|
(b) 在test當中實例化時,命名的變數會是 Name
|
|
|
|
|
|
-3. locator 名稱
|
|
|
|
|
|
+* locator 名稱
|
|
|
|
|
|
(a) page_Name.py 上半部為 locator ,為該頁面欲操作網頁元素的操作依據(xpath, id, ... etc)
|
|
(a) page_Name.py 上半部為 locator ,為該頁面欲操作網頁元素的操作依據(xpath, id, ... etc)
|
|
|
|
|
|
@@ -26,7 +27,7 @@ Design Pattern 一樣也是 PageObjects
|
|
B 其描述,如 圓形的按鈕(同時用id作為索取依據),整個會叫做 button_circle_id,circle就是描述
|
|
B 其描述,如 圓形的按鈕(同時用id作為索取依據),整個會叫做 button_circle_id,circle就是描述
|
|
C 其索取依據,id, class_name, xpath,...
|
|
C 其索取依據,id, class_name, xpath,...
|
|
|
|
|
|
-4. method (def) 名稱
|
|
|
|
|
|
+* method (def) 名稱
|
|
|
|
|
|
(a) page_Name.py 下半部為 元素相關的 method (def), 大部分的操作會是,先確定元素出現(wait)再執行動作(click)
|
|
(a) page_Name.py 下半部為 元素相關的 method (def), 大部分的操作會是,先確定元素出現(wait)再執行動作(click)
|
|
|
|
|