2017-09-25 10 views
0

모두 실행되는 로봇 프레임 워크 테스트 스위트가 있습니다.Robot Framework를 사용하여 크로스 브라우저 테스트를 수행 할 수 있습니까?

저는 파보 (pabot)와 셀레늄 그리드 (Selenium Grid)로 실행하므로 병렬 테스트가 모두 좋습니다.

제 질문은 수동으로 각 브라우저에 대해 동일한 스크립트를 실행하거나 각 브라우저에 대한 테스트 스위트를 복제하지 않고도 여러 브라우저에 대해 테스트 스위트를 실행할 수 있습니까? 기본적으로 "Resource.txt"파일을 사용하여 그리드 노드가 설정된 브라우저를 인스턴스화하도록 테스트에 지시합니다.

예를 들어, TestNG 프로젝트 (POM 메서드 사용)에서 "if"및 "else"메서드를 사용하여 테스트에서 셀렌 그리드 노드가 설정된 브라우저를 사용하도록 지시합니다.

파이썬 2.7 RF 3.0.2 그리드 3.5

답변

1

명령 줄에서 변수를 설정 한 후이 브라우저의 이름을 길게 변수를 사용하는 것입니다, 그리고 할 수있는 일반적인 방법

robot --variable BROWSER:firefox ... 
-or- 
robot --variable BROWSER:chrome ... 
0 : 명령 줄에서

open browser ${ROOT_URL} ${BROWSER} 

: 테스트 경우

명령 줄에서 변수를 설정하는 대신 런타임 조건에 따라 변수의 값을 동적으로 설정하는 variable file을 테스트에 사용하도록 할 수 있습니다.

+0

별도의 명령 줄 입력없이이 작업을 수행 할 수 있습니까? 예를 들어, 모든 브라우저가 변수로 설정되고 테스트에서 노드 설정과 일치하도록 브라우저를 선택합니까? – Richard

+0

@ 리차드 : 물론. 설치 키워드를 호출하기 위해 모든 테스트를 수정해야합니다. 이 설정 키워드는 원하는 모든 것을 할 수 있습니다. 또는 어떤 조건에 따라 변수를 동적으로 설정하는 변수 파일을 사용하십시오. –

+0

이상적으로는 테스트 스크립트에서 호출 할 수있는 변수 파일 방법을 사용하고 싶습니다. 그러나 키워드 라이브러리를 사용하여이 작업을 수행하는 방법을 알 수 없습니다. TestNG 등으로 "if"와 "else"를 사용할 수 있습니까? 아니면 사용하고 싶은 브라우저를 인스턴스화하는 리소스 파일을 가지고 있습니까? 현재 내 스크립트에 '$ {브라우저} 크롬'변수가 있고 "브라우저 $ {로그인 URL} $ {브라우저} 없음 $ {서버}"라는 키워드가 있습니다. (서버가 그리드가 됨) – Richard