2011-01-07 2 views

답변

6

은 크게 유지 보수, 속도를 증가시킬 것입니다 몇 가지 주요 요인 및 테스트하지만, 아무도의 범용성은 추상화 보다 더 중요한이되어 있습니다 요소 로케이터가 테스트 중에서 중앙 저장소로 이동했습니다. 나는 그것을하는 많은 방법에 대해 들었지만 내가 본 최선의 선택은 Page Object 패턴을 사용하는 것이다. 기본적으로 각 페이지는 사용할 요소를 나타내는 속성을 가진 Java 클래스가됩니다. 이 페이지는 PageObject에서 한 번만 정의하고 많은 테스트에서는 정의하지 않기 때문에 요소 로케이터를 변경해야하는 경우 한 번만 할 수 있습니다.

Selenium 2에는 멋진 PageObject Factory가 내장되어 있지만 Selenium RC를 사용하기 때문에 사용할 수 없습니다. 다행히도 Automated Tester 인 David Burns는 C#에서 Page Object를 사용하는 데 관한 훌륭한 기사를 가지고 있습니다. 시작하기에 충분히 근접해야합니다. 셀레늄이/WebDriver 페이지 객체 구현에 대한 자세한 내용은 http://www.theautomatedtester.co.uk/tutorials/selenium/page-object-pattern.htm는 TEH 셀레늄 Google 코드 위키 http://code.google.com/p/selenium/wiki/PageObjects

일부 다른 정말 중요한 요소

  • 가장의 하나의 데이터 기반 테스트를 위해 외부 프레임 워크를 사용하여 고려 참조 Selenium Google Group에 대한 일반적인 질문은 데이터 기반 테스트 실행을 테스트하는 방법입니다. 대답은 거의 항상 단위 테스트 도구와 함께 제공된 데이터 기반 기능을 사용하는 것입니다. TestNG은 데이터 기반 테스트를위한 탁월한 지원으로 인해 Selemium 사용자들에게 인기가되었습니다. TestNG site for Selenium
  • 테스트 병렬 처리 대부분의 테스트는 (HTMLUnit을 사용하지 않는 한) 라이브 브라우저를 구동하므로 테스트에는 다소 시간이 걸립니다. 여러 대의 컴퓨터에서 테스트를 병렬화하면할수록 실행 속도는 빨라집니다. Sauce Labs에는 우수 블로그 시리즈가 있습니다.
  • 오류에 대한 스크린 샷 덜 일반적이지만 좋은 생각입니다. 때로는 문제가있을 때 웹 페이지를 봐야합니다.
+0

BDD 방법이 PageObjects의 대안입니다. – Rajasankar

관련 문제