2012-05-09 2 views
2

나는 모든 단계를 webdriver 뒷받침 아이폰 에뮬레이터를 설치하기 위해 here에 기재했다. 드라이버 인스턴스를 만드는 동안 아래 코드를 사용하여 로컬로 실행할 때도 에뮬레이터의 스크립트를 실행할 수 있습니다.selgrid 2에 아이폰 에뮬레이터를 연결하는 방법?

driver = Selenium::WebDriver.for :remote, :url => "http://localhost:3001/wd/hub", :desired_capabilities => :iphone 

내가하려는 의도는 Windows 시스템에서 원격으로 실행되는 허브가있는 sel grid 2에이 에뮬레이터를 연결하는 것입니다.

Mac 컴퓨터 (동시에 나의 로컬 컴퓨터)에서 셀레늄 webdriver 노드를 시작하는 명령을 공유 할 수 있습니까?

명백한의 종류를 보인다 오류

Exception in thread "main" java.net.BindException: Selenium is already running on port 3001. 

가 발생합니다,하지만 난 그것에 대해 할 수 뭐죠에 같은 혼란 스러워요

java -jar selenium-server-standalone-2.21.0.jar -role webdriver -hubHost remotewindowmachine.com -hubPort 4444 -hub http://remotewindowmachine.com:4444/grid/register -host iphoneIP/hub -port 3001 -browser browserName=iphone 

같은 일부 것.

누군가 나를 도울 수 있습니까?

답변

2

노드 등록 명령을 실행하여 그리드에 등록하지 않아도됩니다. 당신이 iWebDriverApp를 시작할 때 오류가 아이폰 (에뮬레이터)에서

에 대한

이유 는 원격 제어와 같은 포트 (3001)에서 시작한다. 그래서 같은 포트 (3001)에서 같은 머신에서 다른 노드를 시작하려고하면이 오류가 발생합니다.

용액

I 있지만, 실제 장치에서는, 에뮬레이터에서 시도하지 않았다. 기기에 iWebDriverApp를 설치 한 후 앱의 허브 세부 정보를 설정해야합니다. 설정 -> iWebDriverApp으로 이동하면됩니다. 허브 URL과 포트를 지정하는 텍스트 상자를 찾을 수 있습니다. 그런 다음 iWebDriverApp를 다시 시작하십시오. 귀하의 아이폰은 그리드에있을 것입니다.

+0

예 첫 번째 부분에서는 노드와 RC를 동일한 포트에서 실행하려고 시도하기 때문에 분명히 오류가 발생한다고 동의합니다. 불행하게도 나는 테스트 할 물리적 인 아이폰 장치가 없다. 그리고 에뮬레이터를 사용하는 것이 유일한 방법입니다. 또한 iphone 에뮬레이터 설정으로 이동하면 포트 하나만 표시됩니다. 그래서 두 번째 기술을 사용하여 구현할 수 없습니다. 귀하의 답변에 감사드립니다. – Amey

+0

아, 에뮬레이터에서도 동일한 설정을 사용할 것으로 생각했습니다. 왜냐하면 셀레늄 위키에서 언급 한 것이기 때문입니다. 위키에서 발췌 한 내용입니다 ..... ..... 셀레늄 그리드 2에 연결하십시오. 기기 또는 에뮬레이터에 앱을 설치하면됩니다. iOS 설정 앱으로 이동합니다. 아래쪽에는 "iWebDriver"설정 영역이 있습니다. 서버 포트 및 그리드 호스트/포트에 대한 설정이 표시되어야합니다. 세부 정보를 원하는대로 채 웁니다. –

+0

내가 정확히 생각한 것, 불행히도 포트 번호가되는 필드가 하나뿐입니다. 쓸데없는 일입니다. – Amey

관련 문제