Selenium 2 Web Driver 의 Page Objects 에 대해 잘 정리하고 좋은 소스코드도 있는 곳을 찾아서 그 내용을 정리해 둡니다.
Page Objects in Selenium 2 (WebDriver)
참조
This project is inspired by:
Ben Burton's WebDriver Best Practices
Dave Justin’s page object post
James Cox's Using Page Objects
* Why Page Objects pattern?
반복되는 코드를 줄이기 위해.
single page object로 페이지의 internal state를 캡슐화 하기 위해
UI 의 변화는 실제 테스트 코드가 아닌 오직 single page object에만 영향을 미친다.
Code re-use : 여러 테스트 케이스에서 같은 page object를 사용할 수 있도록 한다.
* Step 1 : Page Object base class
Page Base 클래스는 extend 하기 위해 base structure와 page object의 property들을 제공한다.
* Step 2 : Extends PageBase
* Step 3 : Navigation from Page to Page
1. 사용자가 새로운 URL을 브라우저의 URL 바에 입력하는 것을 시뮬레이팅 할 때, 필요한 page object를 생성하는 것은 test case가 해야할 일 입니다.
2. 페이지에서 어떤 일은 브라우저에서 다른 페이지로 넘어가도록 만듭니다. 예를 들어 링크를 클릭하거나 form 을 submit 하는 경우가 있겠죠. 이럴 경우 다음 page object를 return 하는 것은 page object가 해야할 일입니다.
* Step 4 : Tests with Page Objects
* Here are the source codes
Project Home: https://github.com/ChonC/wtbox
wiki: https://github.com/ChonC/wtbox/wiki
PageBase source code
Page Objects test example
Thank you!
Chon Chung - @chon_chung
'TDD Project > Selenium Web Driver' 카테고리의 다른 글
Page Objects in Selenium 2 (Web Driver) 소스 분석 (with Page Objects) 04 (0) | 2013.10.30 |
---|---|
Page Objects in Selenium 2 (Web Driver) 소스 분석 (with Page Objects) 03 (0) | 2013.10.27 |
Page Objects in Selenium 2 (Web Driver) 소스 분석 (with Page Objects) 02 (0) | 2013.10.25 |
Page Objects in Selenium 2 (Web Driver) 소스 분석 (with Page Objects) 01 (0) | 2013.10.25 |
Page Objects in Selenium 2 (Web Driver) 소스 분석 (without Page Objects) (0) | 2013.10.25 |
Selenium 2/WebDriver Quick Tips: Page Object Navigation Strategies (0) | 2013.10.21 |
Selenium WebDriver - PageFactory (0) | 2013.10.20 |
Selenium WebDriver - PageObjects (0) | 2013.10.20 |
Selenium WebDriver Tutorial 03 (0) | 2013.10.19 |
Selenium WebDriver 와 TestNG 함께 사용하기 (1) | 2013.10.18 |