Selenium IDE 튜토리얼

⚡ 스마트 요약

Selenium IDE는 녹화 및 재생 도구입니다. Selenium 프로토타입 제작을 위해 구축된 스위트ping 대규모 스위트를 유지 관리하는 대신 테스트를 통해 모든 Selenese 명령을 기록, 편집, 실행 및 검사할 수 있습니다.

  • 🔘 목적 : IDE는 브라우저의 동작을 Selenese 명령으로 기록하고 프로그래밍 없이 이를 재생합니다.
  • ☑️ 범위: 프로토타입으로 취급하세요ping 도구를 사용한 다음 유지 관리 가능한 프레임워크를 위해 스크립트를 내보냅니다.
  • 메뉴 표시줄: 파일 핸들은 생성, 열기, 저장 및 내보내기를 담당하고, 편집 기능은 새 명령과 주석을 삽입합니다.
  • 🧪 옵션 : 옵션 대화 상자에서 기본 시간 제한 및 기준값을 설정합니다. URL 동작 방식과 로케이터 빌드 순서.
  • 🛠️ 에디터 : 테이블 뷰는 명령, 대상 및 값을 입력하는 곳이며, 소스 뷰는 동일한 스크립트를 마크업으로 보여줍니다.
  • 📊 피드백 창: 로그 창에는 디버그, 정보, 경고 및 오류 메시지가 표시되고, 참조 창에는 선택한 명령에 대한 설명이 표시됩니다.
  • 🚀 오늘 : 현재 사용 중인 IDE는 크롬입니다. Firefox 프로젝트를 단일 .side 파일로 저장하는 Edge 확장 프로그램도 있습니다.

Selenium IDE의 패널, 메뉴 및 툴바를 다루는 IDE 튜토리얼

Selenium IDE?

Selenium IDE(Integrated Development Environment)는 가장 간단한 도구입니다. Selenium 모음곡. 이것은 Firefox 녹화 및 재생 기능을 통해 테스트를 매우 빠르게 생성할 수 있는 추가 기능입니다. 이 기능은 다음과 유사합니다. QTP설치가 간편하고 배우기도 쉽습니다.

⚠️ 버전 관련 유의사항: 전에, Firefox 이 문서 전체에 걸쳐 그림으로 표시된 추가 기능은 서비스가 종료되었습니다. 해당 도구는 Chrome의 추가 기능으로 계속 사용할 수 있습니다. Firefox 그리고 엣지 브라우저 확장 녹음 및 재생 기능은 유지하면서 인터페이스를 재구성하고 프로젝트를 단일 파일로 저장하는 기능입니다. .side 이 파일에는 게시된 그대로의 모든 원본 화면과 설정이 보존되어 있습니다.

그 단순함 때문에, Selenium IDE는 프로토타입 용도로만 사용해야 합니다.ping 개발에 대한 전반적인 해결책이 아니라 도구일 뿐입니다.ping 복잡한 테스트 스위트를 유지 관리하는 것.

사용하실 수는 있겠지만 Selenium 프로그래밍에 대한 사전 지식 없이 IDE를 사용한다면 최소한 HTML에 익숙해야 하며, JavaScript이 도구를 최대한 활용하려면 DOM(문서 객체 모델)에 대한 지식이 필요합니다. JavaSelenese 명령어 "runScript" 부분을 다룰 때 스크립트가 필요합니다.

Selenium IDE는 테스트 생성 시 자동 완성 모드를 지원합니다. 이 기능은 두 가지 목적으로 사용됩니다.

  • 테스터가 명령을 더 빠르게 입력하는 데 도움이 됩니다.
  • 사용자가 잘못된 명령을 입력하는 것을 제한합니다.

Selenium IDE 기능

아래 표시된 화면은 이 문서의 나머지 부분에서 참조되는 모든 지역을 나타냅니다.

Selenium 메뉴 막대가 있는 IDE 창, 기본 URL 막대, 툴바, 테스트 케이스 창, 편집기 및 로그 창에 레이블이 지정되어 있습니다.

메뉴 바

IDE의 최상단에 위치해 있습니다. 가장 자주 사용되는 메뉴는 파일, 편집 및 옵션 메뉴입니다.

파일 메뉴

  • 여기에는 테스트를 생성하고, 열고, 저장하고, 닫는 옵션이 포함되어 있습니다.
  • 시험 결과는 HTML 형식으로 저장됩니다.
  • 가장 유용한 옵션은 "내보내기"입니다. 이 옵션을 사용하면 파일을 다른 형식으로 변환할 수 있기 때문입니다. Selenium IDE 테스트 사례를 실행할 수 있는 파일 형식으로 변환 Selenium 원격 제어 및 WebDriver
  • “테스트 케이스 내보내기”를 선택하면 현재 열려 있는 테스트 케이스만 내보내집니다.
  • “테스트 스위트 내보내기”를 선택하면 현재 열려 있는 테스트 스위트의 모든 테스트 케이스가 내보내집니다.

아래의 확장된 파일 메뉴에는 두 가지 내보내기 항목이 나란히 표시됩니다.

Selenium IDE 파일 메뉴가 확장되어 '테스트 케이스 내보내기' 및 '테스트 스위트 내보내기' 옵션이 표시됩니다.

  • 현재 Selenium IDE v1.9.1에서는 테스트 케이스를 다음 형식으로만 내보낼 수 있습니다.
    • .cs(C# 소스 코드)
    • .자바(Java 소스 코드)
    • .py(Python 소스 코드)
    • .rb(루비 소스 코드)

내보내기 기능은 각 Selenese 행을 선택한 언어로 된 문장으로 다시 작성합니다. 이 HTML-to-Java 비교 결과는 다음과 같습니다.

셀레네세 HTML 테스트 케이스와 그에 상응하는 내보내기 결과가 나란히 표시됩니다. Java 소스 코드

참고 : Selenium 리모컨이 제거되었습니다. Selenium 3 버전부터는 내보낸 RC 스크립트가 더 이상 실행되지 않습니다. 현재 IDE는 대신 WebDriver 코드를 내보냅니다.

편집 메뉴

  • 여기에는 실행 취소, 다시 실행, 잘라내기, 복사, 붙여넣기, 삭제 및 모두 선택과 같은 일반적인 옵션이 포함되어 있습니다.
  • 가장 중요한 두 가지 옵션은 "새 명령 삽입"과 "새 주석 삽입"입니다.

Selenium IDE 편집 메뉴에서 '새 명령 삽입'과 '새 주석 삽입'이 강조 표시됨

새로 삽입된 명령이나 설명은 현재 선택된 줄의 맨 위에 배치됩니다.

선택한 줄 위에 새 명령을 삽입하기 전과 후의 편집기 그리드

  • 명령어는 검은색으로 표시됩니다.
  • 댓글은 보라색으로 표시됩니다.

색상 차이 덕분에 긴 스크립트에서 삽입된 주석을 쉽게 찾아낼 수 있습니다.

편집기 행에 검은색 셀레네즈 명령어가 보라색 주석 줄 옆에 표시됩니다.

옵션 메뉴

다양한 설정을 구성할 수 있는 인터페이스를 제공합니다. Selenium IDE.

옵션 및 클립보드 서식 옵션에 집중하겠습니다.

클립보드 형식 하위 메뉴에는 사용 가능한 모든 코드 스니펫 형식이 나열됩니다.

클립보드 형식

  • 클립보드 서식 기능을 사용하면 편집기에서 Selenese 명령을 복사하여 코드 조각으로 붙여넣을 수 있습니다.
  • 코드 형식은 여기 클립보드 형식 목록에서 선택한 옵션을 따릅니다.
  • HTML이 기본 선택입니다.

예를 들어 다음을 선택할 때 Java/JUnit 4/WebDriver를 클립보드 형식으로 사용하면 복사하는 모든 Selenese 명령어가 표시됩니다. Selenium IDE의 편집기는 다음과 같이 붙여넣어집니다. Java 암호. 아래 그림을 참조하세요.

편집기에서 복사하여 붙여넣은 셀레네어 명령어 Java WebDriver 문장

Selenium IDE 옵션 대화 상자

당신은 시작할 수 있습니다 Selenium IDE 옵션 대화 상자에서 메뉴 바에서 옵션 > 옵션…을 클릭합니다. 사용 가능한 설정은 많지만, 몇 가지 중요한 설정에 집중하겠습니다.

Selenium 타임아웃, 확장 기능, 기본 설정을 포함하는 IDE 옵션 대화 상자 URL 그리고 레이블이 지정된 기록 설정

  • 기본 타임아웃 값. 이는 그 시간을 가리킵니다. Selenium 특정 요소가 나타나거나 접근 가능해질 때까지 기다린 후에야 오류가 발생합니다. 기본 타임아웃 값은 30000ms입니다.
  • Selenium IDE 확장 기능. 여기에서 확장에 사용할 확장 기능을 지정합니다. Selenium IDE의 기능. 넌 방문 할 수있다 addons.mozilla.org 그리고 “Selenium”를 키워드로 사용하여 특정 확장자를 검색합니다.
  • 기지를 기억하세요 URL. 원할 경우 이 항목을 선택된 상태로 유지하세요 Selenium IDE는 베이스를 기억합니다 URL 실행할 때마다 발생합니다. 이 옵션을 해제하면... Selenium IDE는 항상 Base 필드에 빈 값을 입력하여 실행됩니다. URL.
  • 자동 시작 기록. 이것을 확인해보면, Selenium IDE는 시작 시 브라우저 작업을 즉시 기록합니다.
  • 로케이터 빌더. 여기서는 녹화 중에 로케이터가 생성되는 순서를 지정합니다. 로케이터 알 수 있는 방법들이 있습니다 Selenium Selenese 명령이 작동해야 하는 UI 요소에 대한 IDE입니다. 아래 설정에서 ID 속성이 있는 요소를 클릭하면 "id"가 목록의 첫 번째 항목이므로 해당 요소의 ID가 위치 지정자로 사용됩니다. 해당 요소에 ID 속성이 없는 경우 Selenium 다음에는 목록에서 두 번째인 "name" 속성을 찾습니다. 목록은 적절한 항목을 찾을 때까지 계속됩니다.

이 목록에서 항목을 위아래로 드래그하면 레코더가 먼저 참조하는 속성이 변경됩니다.

로케이터 생성기 목록은 레코더가 로케이터를 생성할 때 사용되는 우선순위 순서를 보여줍니다.

Base URL 바

스크립트의 모든 상대 주소는 이 필드를 기준으로 해석됩니다.

Base URL 막대 Selenium 테스트 대상 애플리케이션의 주소를 보유하고 있는 IDE

  • 쉽게 액세스할 수 있도록 모든 이전 값을 기억하는 드롭다운 메뉴가 있습니다.
  • 셀레네어 명령어 "열기"를 입력하면 해당 페이지로 이동합니다. URL 당신이 기본 설정에 지정한 것 URL.
  • 이 튜토리얼 시리즈에서는 demo.guru99.com/test/newtours/ 우리의 기반으로서 URL이곳은 ~을 위한 사이트입니다. Mercury Tours는 웹 테스트 목적으로 사용되는 데모 웹 애플리케이션입니다. 이 애플리케이션은 앞으로 다룰 주제에 필요한 모든 요소를 ​​포함하고 있으므로 계속해서 사용할 것입니다.
  • 자료 URL 상대적인 접근에 매우 유용합니다. URLs. 당신의 기지가 다음과 같다고 가정해 봅시다. URL 받는 사람 설정 Mercury 위의 투어 주소를 참조하세요. 대상 값으로 "signup"을 지정하여 "open" 명령을 실행하면, Selenium IDE는 브라우저를 등록 페이지로 연결합니다. 아래 그림을 참조하세요.

구성된 기준에 대해 상대 대상 가입을 확인하는 명령을 엽니다. URL

도구 모음

툴바에는 녹음 및 재생 제어 버튼이 있습니다. 각 버튼과 그 기능은 아래에 설명되어 있습니다.

재생 속도 슬라이더 재생 속도. 이 설정은 테스트 스크립트 실행 속도를 제어합니다.
녹화 버튼 녹화. 이 버튼을 누르면 녹화 세션이 시작/종료됩니다. 각 브라우저 동작은 편집기에서 Selenese 명령어로 입력됩니다.
전체 테스트 스위트 실행 버튼 전체 테스트 스위트를 실행합니다. 이렇게 하면 테스트 케이스 창에 나열된 모든 테스트 케이스가 순차적으로 실행됩니다.
현재 테스트 케이스 재생 버튼 현재 테스트 케이스를 실행합니다. 이 옵션을 선택하면 테스트 케이스 창에서 현재 선택된 테스트 케이스만 실행됩니다.
일시 정지 및 재개 버튼 일시 정지/재개. 이 버튼을 누르면 재생이 일시 정지되거나 재개됩니다.
단계 버튼 단계별 실행. 이 버튼을 사용하면 테스트 스크립트의 각 명령을 단계별로 실행할 수 있습니다.
롤업 규칙 적용 버튼 롤업 규칙을 적용하세요. 이는 고급 기능으로, Selenese 명령어를 그룹화하여 단일 작업으로 실행할 수 있습니다.

테스트 케이스 창

테스트 케이스 창에는 진행 중인 테스트 케이스 목록이 표시되며, 통과 및 실패 시 색상으로 구분되고 실행 요약 정보가 제공됩니다.

  • In Selenium IDE에서는 한 번에 여러 테스트 케이스를 열 수 있습니다.
  • 테스트 케이스 창에는 현재 열려 있는 테스트 케이스 목록이 표시됩니다.
  • 테스트 스위트를 열면 테스트 케이스 창에 해당 스위트에 포함된 모든 테스트 케이스 목록이 자동으로 표시됩니다.
  • 굵은 글씨로 표시된 테스트 케이스가 현재 선택된 테스트 케이스입니다.
  • 재생 후, 각 테스트 케이스는 통과 여부를 나타내기 위해 색상으로 구분됩니다.
  • 녹색은 '통과'를 의미합니다.
  • 빨간색은 '실패'를 의미합니다.
  • 하단 부분에는 실행 및 실패한 테스트 사례 수에 대한 요약이 있습니다.

편집자

편집기는 모든 작업이 이루어지는 곳이라고 생각하시면 됩니다. 편집기는 표 보기와 소스 보기 두 가지 모드로 제공됩니다.

Table View

  • 대부분의 경우 다음 작업을 수행하게 됩니다. Selenium 테이블 뷰를 사용하는 IDE.
  • 이곳에서 Selenese 명령어를 생성하고 수정합니다.
  • 재생 후 각 단계는 색상으로 구분됩니다.

재생 후 실행된 단계가 색상으로 구분된 테이블 보기 편집기

  • 단계를 생성하려면 "명령" 텍스트 상자에 명령 이름을 입력합니다.
  • 현재 입력 중인 항목과 일치하는 명령 목록이 드롭다운 메뉴로 표시됩니다.ping.
  • Target 는 명령에 대한 매개변수(예: 사용자 이름, 비밀번호)이고 Value는 해당 명령에 대한 입력 값(예: tom, 123pass)입니다. Targets.

명령, Target 그리고 값 필드 Selenium IDE 테이블 편집기

소스 보기

  • HTML(기본값) 형식으로 단계를 표시합니다.
  • 또한 테이블 보기에서처럼 스크립트를 편집할 수도 있습니다.

소스 보기의 편집기에서 동일한 테스트 케이스를 HTML Selenese 테이블로 표시합니다.

로그 창

로그 창에는 실행 중 발생하는 런타임 메시지가 표시됩니다. 이를 통해 실시간으로 어떤 작업이 진행되었는지에 대한 업데이트를 확인할 수 있습니다. Selenium IDE가 하고 있습니다.

로그는 네 가지 유형으로 분류됩니다.

  • 디버그 기본적으로 디버그 메시지는 로그 패널에 표시되지 않습니다. 필터링을 통해서만 표시되며, 어떤 작업이 수행되었는지에 대한 기술적인 정보를 제공합니다. Selenium IDE는 뒤에서 작업을 수행하고 있습니다. 특정 모듈이 로드를 완료했거나, 특정 함수가 호출되었거나, 외부 호출과 같은 메시지가 표시될 수 있습니다. Java스크립트 파일이 확장자로 로드되었습니다.
  • 정보 – 어떤 명령인지 알려줍니다. Selenium IDE가 현재 실행 중입니다.
  • 경고 – 이는 특정한 상황에서 나타나는 경고 메시지입니다.
  • 오류 – 이러한 오류 메시지는 다음과 같은 경우에 생성됩니다. Selenium IDE가 명령을 실행하지 못하거나, 지정된 조건이 충족되지 않는 경우 "verify" 또는 "assert" 명령 조건이 충족되지 않았습니다.

로그 창 드롭다운 메뉴에는 디버그, 정보, 경고 및 오류 메시지 유형이 나열됩니다.

로그는 유형별로 필터링할 수 있습니다. 예를 들어 드롭다운 목록에서 "오류" 옵션을 선택하면 로그 창에 오류 메시지만 표시됩니다.

로그 창에서 오류를 필터링하여 실패한 명령 메시지만 표시되도록 설정했습니다.

참조 창

참조 창에는 편집기에서 현재 선택된 Selenese 명령에 대한 간략한 설명이 표시됩니다. 또한 해당 명령에 사용할 로케이터와 값에 대한 설명도 표시됩니다.

선택한 Selenese 명령과 해당 대상 및 값 인수에 대한 설명을 표시하는 참조 창

UI 요소 창

UI 요소는 고급용입니다. Selenium 사용자. 그것은 사용한다 Java요소 맵을 정의하기 위한 JSON(Script Object Notation)ping참고: 관련 문서 및 자료는 도움말 메뉴의 "UI 요소 문서" 옵션에서 찾을 수 있습니다. Selenium IDE.

도움말 메뉴 Selenium UI 요소 문서 항목이 포함된 IDE

UI 요소 화면의 예는 다음과 같습니다.

테스트 중인 애플리케이션의 JSON 요소 맵을 담고 있는 UI 요소 패널

롤업 창

Rollup은 여러 명령을 한 번에 실행할 수 있도록 해줍니다. 이러한 명령 그룹을 간단히 "롤업"이라고 합니다. Rollup은 다양한 기능을 활용합니다. Java프로그래밍 언어의 "함수"와 유사한 명령 모음을 공식화하기 위한 스크립트 및 UI 요소 개념.

롤업은 재사용 가능합니다. 즉, 테스트 케이스 내에서 여러 번 사용할 수 있습니다. 롤업은 여러 명령어를 하나로 압축한 것이므로 테스트 스크립트를 간결하게 만드는 데 크게 도움이 됩니다.

여러 Selenese 단계를 편집기에서 단일 rollup 명령으로 압축했습니다.

롤업 탭의 내용이 어떻게 보이는지에 대한 예는 다음과 같습니다.

롤업 패널이 표시됩니다 Java재사용 가능한 롤업 규칙의 스크립트 정의

현재 확장 프로그램에는 롤업 및 UI 요소 패널에 해당하는 기능이 없으며, 제어 흐름 명령과 코드 내보내기 기능이 그 역할을 대신합니다.

자주 묻는 질문

.side 확장자를 가진 단일 파일에 프로젝트 전체(모든 테스트, 모든 테스트 스위트 및 기본 파일)가 담겨 있습니다. URL이는 테스트 케이스당 하나의 HTML 파일을 사용하는 기존 모델을 대체하며, 프로젝트를 버전 관리 시스템에 쉽게 커밋할 수 있도록 해줍니다.

네. 확장 프로그램 내에서의 재생은 설치된 브라우저를 사용하지만, 명령줄 실행기는 저장된 프로젝트를 다른 브라우저에서도 실행하고 빌드 파이프라인에 통합할 수 있습니다. 이는 브라우저 내 플레이어가 할 수 없는 기능입니다.

현재 IDE에는 if, else if, else, while, times, do, repeat if, for each 등의 제어 흐름 명령이 포함되어 있습니다. 이는 분기 및 반복문 처리를 모두 지원합니다.ping 녹음된 스크립트에서 Java스크립트는 기존 롤업 기능에 필요했던 해결책을 제공합니다.

레코더는 각 요소에 대해 여러 개의 후보 로케이터를 저장합니다. 재생 중에는 하나가 성공할 때까지 대안들을 시도하므로, ID가 변경되더라도 반드시 단계가 중단되는 것은 아닙니다. 하지만 지속적인 오류가 발생하는 경우에는 로케이터 목록을 수동으로 편집해야 합니다.

테스트 또는 테스트 스위트를 마우스 오른쪽 버튼으로 클릭하면 C# NUnit, C# xUnit용 WebDriver 코드가 표시됩니다. Java JUnit, Java스크립트 모카, Python 파이 테스트 Ruby RSpec도 지원합니다. 선택적으로 토글 버튼을 사용하여 주석을 추가할 수 있습니다. trac생성된 각 줄을 기록된 단계로 되돌립니다.

머신러닝은 주로 기록된 테스트의 가장 취약한 부분인 로케이터에 적용됩니다. 자가 복구 엔진은 여러 후보 선택기를 순위별로 정렬하고 마크업이 변경될 때 작동하는 선택기로 교체하며, 유사한 모델은 반복되는 오류를 클러스터링하여 실제 결함을 타이밍 노이즈에서 분리합니다.

정리 작업에 매우 적합합니다. 내보낸 코드는 하나의 긴 선형 메서드인데, Copilot은 이를 페이지 객체로 리팩토링하고, 하드코딩된 데이터를 픽스처로 가져오고, 고정된 일시 정지를 명시적인 대기로 대체합니다. Rev저장된 위치 추적기를 확인하세요.

테스트에 공유 설정, 데이터 파일, 보고서 또는 여러 테스트 스위트 간 재사용이 필요한 경우, IDE는 시나리오를 신속하게 검증하는 데 매우 유용합니다. 코딩된 코드는 다음과 같은 작업을 수행합니다. Selenium 이 프레임워크 덕분에 수백 가지 시나리오를 유지 관리할 수 있습니다.

이 게시물을 요약하면 다음과 같습니다.