2010-01-16 5 views
1

파이썬으로 작성된 서버 코드가 있는데 GWT로 작성된 클라이언트 코드가 있습니다. 이제 GWT에 대한 자동화 테스트를 Python 서버의 데이터와 비교하여 실행하려고합니다.외부 서버를 통한 GWT 테스트

내가 검색 한 내용에서 사람들은 Selenium 사용을 권장하지만 클라이언트 코드에 대한 가시성이 높은 GWT 테스트를 선호합니다. 그렇게하면 로컬 데이터베이스와 UI에 노출되지 않은 데이터를 확인할 수 있습니다.

또한이 시점에서 DOM 측면, 레이아웃 및 기타 UI 항목에 대해 너무 걱정하지 않습니다.

GWTTest를 외부 서버와 함께 사용할 수 있습니까?

해결책이나 비슷한 문제가있는 사용자를 검색하려고했지만 찾을 수 없습니다. 이전에이 질문에 대한 답변을 얻었다면 사과드립니다.

감사합니다.

답변

0

GWTTest 프레임 워크를 사용하여 서버를 호출하는 일부 GWT 구성 요소 테스트를 통합 할 수 있습니다. 그러나 테스트는 서버와 직접 통신 할 수 없습니다. 서버에 상태를 설정하기 위해 테스트가 필요하다면 RPC 서버 나 서블릿 또는 이와 유사한 방법으로 특수한 "테스트 용으로 만"작성해야 할 것 같습니다. 서버 구성 요소에 대한

  1. 단위 테스트 및 클라이언트 구성 요소에 대한 단위 GWTTests, 테스트
  2. 통합 테스트 :

    내가 (아마도 셀레늄을 제안하는 사람들처럼) 테스트의 세 가지 유형을 추천 할 것입니다, 그런 말로 미루어 보아, 서버 코드와 데이터베이스의 상호 작용 등
  3. "블랙 박스"인 셀레늄 수용 테스트 - GWT 구성 요소의 내부에 대한 액세스 권한이 없습니다.
+0

요청을 백엔드로 리디렉션 할 수있는 "프록시"RPC 서버를 만드는 방법이 있습니까? 그렇게하면 RPC 서버 코드를 한 번만 구현하면됩니다. 저는 백엔드의 기능을 (완전히는 아니지만) 복제해야한다는 생각을 좋아하지 않습니다. 응답 해 주셔서 감사합니다. – KOkon

+0

서버 쪽에서 Java를 사용합니다. 수락 테스트에서 URL http :/localhost/app/deleteAllDataForTesting? really = yes로 GET 요청을 할 수 있습니다. 내 서버가이 호출을 인식하고 데이터를 삭제하고 서버 상태를 재설정하는 과정을 거칩니다. 그것은 RPC가 아닙니다. 내 서블릿이 응답 할 수있는 일반적인 http get입니다. 그것은 꽤 잘 작동하는 것 같습니다. – John

+0

조언을 주신 John에게 감사드립니다. 내 시스템에서해볼 게. – KOkon

0

GWTTestCase가 포함 된 Jetty 인스턴스에서 시작되는 프록시 서블릿을 만들면됩니다. 이 프록시는 모든 호출을 파이썬에서 실제 서비스로 전달할 수 있습니다.