logo

셀레늄 웹드라이버

Selenium WebDriver는 Selenium Tool Suite의 가장 중요한 구성 요소입니다. 최신 릴리스 'Selenium 2.0'은 WebDriver API와 통합되어 보다 간단하고 간결한 프로그래밍 인터페이스를 제공합니다.

정렬 배열 목록 자바

다음 이미지는 Selenium 구성 요소와 테스트 자동화 도구에 대한 공정한 이해를 제공합니다.


셀레늄 웹드라이버

Selenium WebDriver는 Selenium v2.0의 일부로 처음 도입되었습니다. Selenium의 초기 버전, 즉 Selenium v1은 IDE, RC 및 Grid로만 구성되었습니다. 그러나 Selenium v3이 출시되면서 RC는 더 이상 사용되지 않으며 레거시 패키지로 이동되었습니다.

WebDriver에서는 지원되는 프로그래밍 언어를 사용하여 테스트 스크립트를 개발할 수 있으며 대부분의 최신 웹 브라우저에서 직접 실행할 수 있습니다. WebDriver가 지원하는 언어에는 C#, Java, Perl, PHP, Python 및 Ruby가 포함됩니다.

Selenium WebDriver의 개념을 배우기 전에 지원되는 프로그래밍 언어에 대해 잘 알고 있어야 합니다. 현재 Selenium 웹 드라이버는 Java 및 C#에서 가장 많이 사용됩니다. 이 튜토리얼에서는 Java와 함께 Selenium을 사용합니다. Java 및 C#의 기본 개념과 고급 개념을 알아보려면 아래 링크를 참조하세요.

자바 튜토리얼: https://www.javatpoint.com/java-tutorial

C# 튜토리얼: https://www.javatpoint.com/c-sharp-tutorial

Selenium WebDriver는 웹 브라우저를 직접 호출하기 때문에 Selenium RC에 비해 훨씬 빠르게 수행됩니다. 반면에 RC는 브라우저와 상호 작용하려면 RC 서버가 필요합니다.

WebDriver에는 Firefox 드라이버(Gecko Driver)가 내장되어 있습니다. 다른 브라우저의 경우 통신하고 테스트를 실행하려면 브라우저별 드라이버를 플러그인해야 합니다. 가장 일반적으로 사용되는 WebDriver에는 다음이 포함됩니다.

  • 구글 크롬 드라이버
  • 인터넷 익스플로러 드라이버
  • 오페라 드라이버
  • 사파리 드라이버
  • HTML 유닛 드라이버(특수 헤드리스 드라이버)

Selenium WebDriver- 아키텍처

Selenium WebDriver API는 언어와 브라우저 간의 통신 기능을 제공합니다.

다음 이미지는 Selenium WebDriver의 아키텍처 표현을 보여줍니다.


셀레늄 WebDriver 아키텍처

WebDriver 아키텍처에는 네 가지 기본 구성 요소가 있습니다.

  • 셀레늄 언어 바인딩
  • JSON 와이어 프로토콜
  • 브라우저 드라이버
  • 실제 브라우저

Selenium 언어 바인딩/Selenium 클라이언트 라이브러리

Selenium 개발자는 여러 언어를 지원하기 위해 언어 바인딩/Selenium 클라이언트 라이브러리를 구축했습니다. 예를 들어 Java에서 브라우저 드라이버를 사용하려면 Java 바인딩을 사용하십시오. 지원되는 모든 언어 바인딩은 공식 웹사이트에서 다운로드할 수 있습니다. (https://www.seleniumhq.org/download/#client-drivers) 셀레늄의.

JSON 와이어 프로토콜

JSON(JavaScript Object Notation)은 웹에서 데이터를 교환하기 위한 개방형 표준입니다. 객체 및 배열과 같은 데이터 구조를 지원합니다. 따라서 JSON에서 데이터를 쉽게 쓰고 읽을 수 있습니다. JSON에 대해 자세히 알아보려면 https://www.javatpoint.com/json-tutorial을 방문하세요.

JSON Wire Protocol은 서버와 클라이언트 간에 데이터를 전송하는 전송 메커니즘을 제공합니다. JSON Wire Protocol은 다양한 REST 웹 서비스에 대한 업계 표준으로 사용됩니다. 웹 서비스에 대해 자세히 알아보려면 https://www.javatpoint.com/web-services-tutorial을 방문하세요.

브라우저 드라이버

Selenium은 브라우저 기능의 내부 논리를 공개하지 않고 브라우저와의 보안 연결을 설정하기 위해 각 브라우저에 특정한 드라이버를 사용합니다. 브라우저 드라이버는 Java, C# 등과 같은 자동화에 사용되는 언어에만 적용됩니다.

WebDriver를 사용하여 테스트 스크립트를 실행하면 내부적으로 다음 작업이 수행됩니다.

  • HTTP 요청이 생성되어 각 Selenium 명령에 대해 브라우저 드라이버로 전송됩니다.
  • 드라이버는 HTTP 서버를 통해 HTTP 요청을 받습니다.
  • HTTP 서버는 브라우저에서 실행되는 명령을 수행하는 모든 단계를 결정합니다.
  • 실행 상태는 HTTP 서버로 다시 전송되고 이후 자동화 스크립트로 다시 전송됩니다.

브라우저

Selenium WebDriver가 지원하는 브라우저:

  • 인터넷 익스플로러
  • 모질라 파이어 폭스
  • 구글 크롬
  • 원정 여행

Selenium WebDriver- 기능

Selenium WebDriver의 가장 중요한 기능 중 일부는 다음과 같습니다.

    다중 브라우저 지원: Selenium WebDriver는 Firefox, Chrome, Internet Explorer, Opera 등과 같은 다양한 웹 브라우저를 지원합니다. 또한 HTMLUnit과 같은 비전통적이거나 희귀한 브라우저 중 일부를 지원합니다.

셀레늄 WebDriver 기능
    다중 언어 지원: WebDriver는 Java, C#, JavaScript, PHP, Ruby, Pearl 및 Python과 같이 일반적으로 사용되는 대부분의 프로그래밍 언어도 지원합니다. 따라서 사용자는 자신의 역량에 따라 지원되는 프로그래밍 언어 중 하나를 선택하고 테스트 스크립트 작성을 시작할 수 있습니다.속도: WebDriver는 Selenium Suite의 다른 도구에 비해 더 빠른 성능을 발휘합니다. RC와 달리 브라우저와 통신하기 위해 중간 서버가 필요하지 않습니다. 오히려 도구는 브라우저와 직접 통신합니다.

셀레늄 WebDriver 기능
    간단한 명령: Selenium WebDriver에서 사용되는 대부분의 명령은 구현하기 쉽습니다. 예를 들어 WebDriver에서 브라우저를 시작하려면 다음 명령이 사용됩니다.
    웹드라이버 드라이버 = 새로운 FirefoxDriver(); (파이어폭스 브라우저)
    웹드라이버 드라이버 = 새로운 ChromeDriver(); (크롬 브라우저)
    웹드라이버 드라이버 = 새로운 InternetExplorerDriver(); (인터넷 익스플로러 브라우저)WebDriver- 메서드 및 클래스: WebDriver는 자동화 테스트의 몇 가지 잠재적인 문제에 대처할 수 있는 다양한 솔루션을 제공합니다.
    또한 WebDriver를 사용하면 테스터는 동적 파인더를 통해 확인란, 드롭다운 및 경고와 같은 복잡한 유형의 웹 요소를 처리할 수 있습니다.

셀레늄 WebDriver 기능

Selenium WebDriver 튜토리얼 색인


Selenium WebDriver 튜토리얼

  • Selenium WebDriver 튜토리얼
  • WebDriver 대 RC
  • WebDriver-설치
  • WebDriver 첫 번째 테스트 사례
  • 웹드라이버 명령
  • Chrome에서 테스트 실행
  • Firefox에서 테스트 실행
  • IE에서 테스트 실행
  • Safari에서 테스트 실행
  • 전략 찾기
  • ID로 전략 찾기
  • 이름으로 전략 찾기
  • 클래스 이름으로 전략 찾기
  • 태그 이름으로 전략 찾기
  • 링크 텍스트로 전략 찾기
  • 부분 링크 텍스트로 전략 찾기
  • CSS로 전략 찾기
  • XPath로 전략 찾기
  • 드롭다운 처리
  • WebDriver-드래그 앤 드롭
  • WebDriver 처리 경고
  • 웹 페이지 스크롤
  • WebDriver - 브라우저 명령
  • WebDriver - 탐색 명령
  • WebDriver - WebElement 명령
  • 라디오 버튼 처리
  • 체크박스 처리
  • 셀레늄 어설션
  • 셀레늄 그리드