2013-10-08 2 views
0

소스 테스트를 시작한 후 그리드 요청의 네트워크 시간 초과를 감지하려면 어떻게합니까? RemoteWebDriver 클라이언트 개체을 사용합니까? 필자는 프레임 워크에 잡으려는 시나리오를 가지고 있습니다. 즉, SauceLabs에 대한 외부 연결이 작동하지만 연결이 실패 할 때입니다. 즉, 이것은 셀레늄 테스트에서 브라우저 .get()을 보내고 SourceLabs에서 새 URL로 새 브라우저를 엽니 다.하지만 네트워크 문제로 인해 후속 JSON 패킷이 실패하고 테스트가 중단 된 것으로 보이는 네트워크 시나리오입니다 . 문제가 뭔지는 알지만, 단위 테스트 프레임 워크에서 네트워크 문제를보고 싶습니다. 현재이 조건이 발생하면 RemoteWebDriver가 무한정 시간 초과되어 허용되지 않습니다. 소스 테스트를 시작한 후 그리드 요청의 네트워크 시간 초과를 어떻게 감지합니까?

는 나는 이것이 RemoteWebDriver 클라이언트가 처음 그리드 허브로 JSON 명령을 보내려고하면 클라이언트 측 제한 시간이 어떻게 작동하는지에 대한 이해가 필요합니다 해결하기 위해 알고있다.

그리드를 시작할 때 타임 아웃을 지정할 수 있지만 비슷한 옵션이 클라이언트 측에없는 것처럼 보입니까? 이에 도움이되는 소스 끝에 유휴 시간 제한을 설정

Hub start :- java -jar /tools/grid/selenium-server-standalone-2.35.0.jar 
-role hub -maxSession 20 -browserTimeout 240 
-remoteControlPollingIntervalInSeconds 180 -sessionMaxIdleTimeInSeconds 240 
-newSessionMaxWaitTimeInSeconds 250 -timeout 30 

답변

0

: http://saucelabs.com/docs/additional-config#idle-timeout

로 (90 초 기본적으로 설정)이 원하는 기능이 시간에는 명령이 셀레늄 스크립트에서 수신되지 있는지. 네트워크 문제를 직접 감지 할 수는 없지만 차단 된 응답으로 인해 분이 처리되지 않을 수 있습니다.

또한 방화벽으로 연결된 리소스에 대해 테스트 할 수있는 무료 독립형 Java 유틸리티 인 Sauce Connect (https://saucelabs.com/docs/connect)를 사용하는 것이 좋습니다. 손실 된 패킷에 대해서도 검사를 연결하고 자동으로 다시 연결하기위한 시도 (특정 지점까지)를 다시 보냅니다.