2017-03-26 9 views
2

IWebDriver driver = new FirefoxDriver(); driver.Url = "http://www.testedApp.com";과 같은 간단한 웹 드라이버 설정을 사용하고 테스트를 Microsoft.VisualStudio.TestTools.UnitTesting;을 통해 실행하여 테스트 컴퓨터에서 Selenium 테스트를 로컬로 실행할 수 있었지만 Team Foundation Server vnext를 통해 테스트를 배포 할 때 "Test : Run Functional Tests" https://www.visualstudio.com/en-gb/docs/build/steps/test/run-functional-tests 나는 처음부터 드라이버를 만들 수 없다는 것과 관련된 모든 다양한 오류가 발생합니다.TFS 2017 vnext 빌드에서 "Run Functional Tests"단계를 수행하기 위해 RemoteWebDriver와 함께 Selenium Server를 실행해야합니까?

테스트 할 응용 프로그램이 이미 설치된 원격 컴퓨터 (Windows Server 2008 R2 또는 2012)에 Selenium 테스트를 배포하고 있습니다. driver.Url = "http://www.testedApp.com"; 또는 driver.Url = "http://www.localhost/testedApp.com"; (내가 테스트를 배포 한 컴퓨터가 아니라 TFS 서버 컴퓨터에서 계속 실행되고있는 것으로 보이는) 컴퓨터에 URL을 넣으면 시간 초과시 실패한 것처럼 보입니다. 스택 오버플로이 답변에

Selenium Error - The HTTP request to the remote WebDriver timed out after 60 seconds

는,이 모든 옵션을 시도 더보고 후, 나는 셀레늄 서버를 발견 RemoteWebdriver는

내가합니다 (RemoteWebdriver 실제로 매우 깊은 내 오류가있을 때) 또한 관리자 계정으로 원격 시스템에서 테스트 에이전트를 실행하므로 UI ​​액세스가 probl이 아닐 것이라고 가정합니다 하지만 Phantomjs를 브라우저로 사용하면 오류가 계속 발생합니다.

내 실제 질문은 TFS 컴퓨터의 원격 컴퓨터에서 성공적으로 테스트를 실행하기 위해 Selemium Server를 설치하고 실행해야하며 RemoteWebdriver를 통해 내 드라이버를 만들어야한다는 것입니다.

그렇다면이 Selenium Server는 TFS 컴퓨터 또는 테스트를 실행하려고 시도하는 원격 컴퓨터에 있습니까?

답변

1

브라우저를 실행하는 모든 시스템에 셀레늄 서버 또는 노드가 필요합니다.

+0

감사합니다.만약 내가 더 많은 조언을 해줄 수 있다면, 서로 다른 머신 설정을 쉽게 유지하기 위해 각 머신마다 별도의 vnext 빌드를 사용하여 여러 머신에서이 계획을 세울 계획 이었지만, Grid 문서를 보면, 그걸로 여러 컴퓨터를 실행합니까? 다른 포트에서 여러 개의 '그리드'를 실행하는 것이 가능하거나 자원 낭비가 될 수 있습니까? 아니면 하나의 빌드에서 모든 다른 컴퓨터와 테스트를 실행하는 더 좋은 방법을 찾아야합니까? – toltec7

+0

각 기계에서 고유 한 기능을 작성할 수 있으면 하나의 격자로 충분하므로 원하는 기능을 요청할 수 있습니다. 구별을 위해 맞춤 기능이 필요할 수도 있으며이 블로그 게시물은 도움이 될 수 있습니다. https://rationaleemotions.wordpress.com/2014/01/19/working-with-a-custom-capability-matcher-in-the-grid/ –

1

저는 이것을 솔루션으로 업데이트하려고합니다.

나는 vnext를 얻을 수 있었다. remoteWebDriver를 사용하거나 노드가있는 Selenium Server를 사용하지 않고 "Test : Run Functional Tests"빌드 단계를 수행했다.

모든 올바른 신뢰 수준과 포트를 열었습니다. 문제는 내가 PAT 토큰을 사용하여 인증 된 테스트를 실행하는 에이전트를 필요로한다는 것을 인식하지 못했습니다 (즉, SSL을 작동해야합니다. 성공적으로 (DOH!)

또한 도메인 정책이 자동 실행을위한 그룹 정책을 0으로 재설정하는 문제가 발생했습니다.이 정책은 테스트를 시작하기 전에 재설정 스크립트를 실행하여 발생합니다.

희망이 있으면 다른 사람에게 도움이됩니다.

그리고 내 질문에 처음에 잘못된 가정이 생기면 미리 사과드립니다.

물론 셀레늄 서버 (또는 옥토퍼스 배포)를 유지할 필요가 없으며 Vnext 빌드가이 모든 것을 집안에서 처리 할 수 ​​있다는 점에 대해 감사드립니다.

Vnext는 여전히 내 요구에 완전히 적응되기로 이동하는 방법이 있지만, 그것은 위대한 시작 (IMO) 확인 스티브에 대한