Selenium 유무에 관계없이 Protractor를 실행하는 차이점
프로젝터 문서를 확인해보니 Selenium 서버를 사용하지 않고 프로젝터를 실행할 수 있는 옵션이 있습니다.directConnect: true
플래그를 설정합니다.
Selenium 서버를 사용한 프로젝터 테스트와 Selenium 서버를 사용하지 않은 프로젝터 테스트는 후자의 경우 Chrome과 Firefox만 지원된다는 점 이외에는 어떤 차이가 있습니까?
우선, 현재 브라우저 드라이버에 접속하기 위한 5가지 내장 옵션/방법이 있습니다.
- 명시하다
seleniumServerJar
selenium 독립 실행형 서버를 로컬로 시작하려면 - 명시하다
seleniumAddress
실행 중인 셀레늄 서버(로컬 또는 원격)에 연결하다 - 세트
sauceUser
그리고.sauceKey
Source Labs 원격 셀레늄 서버에 연결하려면 - 세트
browserstackUser
그리고.browserstackKey
원격 Selenium 서버를 BrowserStack 경유로 사용하려면 - 사용하다
directConnect
Chrome 또는 Firefox에 직접 연결할 수 있습니다.추가가 있습니다.chromeDriver
그리고.firefoxPath
사용자 지정 크롬 드라이버 및 Firefox 애플리케이션 이진 위치를 정의하는 데 사용할 수 있는 설정입니다.
첫 번째 4가지 옵션은 기본적으로 "프록시"인 셀레늄 서버를 통해 작동합니다.
서버는 테스트 스크립트(WebDriver API로 작성)와 브라우저 드라이버(WebDriver 프로토콜로 제어) 사이에서 프록시 역할을 합니다.서버는 스크립트에서 드라이버로 명령을 전송하고 드라이버에서 스크립트로 응답을 반환합니다.
웹 드라이버의 직접 접속이 아닌 중간 Selenium 서버를 통해 브라우저를 자동화하는 주된 이유는 Selenium 서버가 Selenium 그리드 역할을 하는 경우 여러 브라우저, 여러 시스템의 여러 브라우저에 걸쳐 테스트를 확장/스케일링할 수 있기 때문입니다.예를 들어 Source Labs Selenium Grid를 참조하십시오.참고로 Source Labs와 마찬가지로 다양한 기능/구성(브라우저 및 시스템)을 갖춘 셀레늄 서버로서 기능하는 서비스도 있습니다.
셀레늄 서버를 기동하고(옵션 2에 대해 언급) 사용하지 않는 다른 사용 사례directConnect
테스트를 실행하는 특정 구성이 있을 수 있습니다.예를 들어, IE 11이 탑재된 Windows 머신과 Firefox 35가 탑재된 Ubuntu가 탑재된 Windows 머신이 있습니다.이 경우 셀레늄 서버/허브에 접속하는 셀레늄 노드로 이들 머신을 설정할 수 있습니다.
또는 Chrome Firefox를 합니다.directConnect
테스트 속도가 빨라집니다.
단, 로컬에서 테스트를 실행하고 IE, Safari 또는 기타 브라우저와 대조하여 테스트해야 하는 경우에는 옵션1 ~ 4 (통상은 1)를 선택합니다.이러한 브라우저는 「직접 접속」모드에서는 동작할 수 없기 때문입니다.
관련 토픽도 참조해당 항목:
- 'Selenium-server-standalone.jar'와 'Selenium Client & WebDriver'의 차이점은 무엇입니까?
- "selenium server"와 "selenium server standalone"의 차이점
'만일'의 경우directConnect
그러면 셀레늄 서버를 사용하지 않고 테스트가 실행됩니다.여기서 셀레늄 서버는 셀레늄 그리드(허브 및 노드)와 유사한 설정을 의미합니다.Selenium Server 경유로 테스트를 실행하면 리모트머신 또는 로컬머신 상에서 테스트를 실행할 수 있습니다.또, 실행 부하를 다른 노드간에 분산하는 옵션도 준비되어 있습니다.셀레늄 서버를 사용하여 여러 브라우저에서 동시에 테스트를 실행할 수도 있습니다.
한편, 「 」는, 「 」, 「 」의 사이에directConnect
Chrome의 합니다.false fire FireFox 、 Chrome 。테스트 코드베이스가 존재하는 머신에서 테스트가 실행됩니다.
언급URL : https://stackoverflow.com/questions/30600738/difference-running-protractor-with-without-selenium
'programing' 카테고리의 다른 글
입력 무선 요소를 반응 [material-ui]에서 수평으로 정렬하려면 어떻게 해야 합니까? (0) | 2023.02.13 |
---|---|
숫자를 특정 범위로 제한할 수 있습니까? (0) | 2023.02.13 |
WordPress 및 정의되지 않은 함수 add_menu_page() 호출 (0) | 2023.02.13 |
고정 AppBar 아래의 콘텐츠 (0) | 2023.02.13 |
스프링 부트: 연동 테스트 중 @TestConfiguration이 Bean을 덮어쓰지 않음 (0) | 2023.02.13 |