[AngularJs] Protractor-Page Object 實作
開發工具設定
Visual Studio的TypeScript Module System需要設定為CommonJs,此為NodeJs載入模組設定撰寫 Page Object
1.新增caculatorPage.ts 重點如下- 將元素變成全域屬性,這樣在其他方法都可以使用
- 將瀏覽該網頁封裝方法open()
- 將計算所需的輸入封裝方法caculate
2.新增測試腳本caculator-spec-page-object.ts 重點如下:
- 注入PageObject :import app=require(相對檔案路徑)
- 本來直接使用element(by..),改使用pageObject提供的方法、屬性來操作
下圖為caculator-spec.ts跟上圖作比較
Summary
透過Page Obejct Patten的撰寫方式,雖然在撰寫上會比原本要複雜點,但可以提高測試程式的 reuse及更方便管理,個人覺得是很值得的。範例下載:Github