로봇 프레임워크 작업 시작 방법 – 개요

최종 업데이트 날짜: 2020년 8월 09일 — Guy Arieli, 품질 CTO
Continuous Testing

로봇 개요

로봇 프레임워크는 테스트 자동화 QA 팀이 인수 테스트 및 인수 테스트 주도 개발(ATDD) 환경을 쉽게 관리할 수 있도록 하는 프레임워크입니다. 이 도구는 2005년 페카 클라크(Pekka Klarck)가 처음 설계하고 같은 해 노키아 네트웍스(Nokia Networks)에서 개발되었습니다. 2008년 오픈 소스로 제공되었습니다. Python 언어로 작성된 Robot은 풍부한 라이브러리 및 도구 생태계를 제공하는 동시에 거의 모든 테스트 자동화 솔루션과 통합할 수 있습니다. 이 프레임워크는 IronPython(.NET) 및 Jython(JVM)에서도 실행됩니다. 플랫폼과 애플리케이션에 구애받지 않습니다. 이 도구는 쉬운 구문을 제공하며 키워드 기반 테스트 방식을 사용합니다. 키워드는 사람이 읽을 수 있도록 작성되었으며, 기본 제공되는 키워드를 사용하거나 직접 키워드를 만들 수 있습니다. 현재 Robot Framework Foundation에서 이 도구의 개발을 담당하고 있습니다.

수용 테스트란 무엇인가?

수락 테스트 소프트웨어가 프로덕션에 투입되기 전에 기능 사양 및 비즈니스 요구 사항을 준수하는지 확인하는 테스트 프로젝트의 일부입니다. 일반적인 테스트 파이프라인, 단위 테스트가 먼저 실행됩니다. 그 다음에 다음이 실행됩니다. 통합 테스트 시스템 테스트. 마지막으로, 인수 테스트는 소프트웨어가 최종 사용자에게 제공되기 전에 모든 비즈니스 요구 사항을 충족하는지 확인하기 위해 수행됩니다. 인수 테스트는 일반적으로 블랙박스 테스트를 통해 수행됩니다.

수용 테스트는 예를 들어 두 가지 방법으로 수행됩니다.

  1. 내부 수용 테스트: 해당 소프트웨어 개발에 참여하지 않은 소프트웨어 회사의 구성원이 해당 소프트웨어를 테스트하게 됩니다.
  2. 외부 수용 테스트: 소프트웨어 회사 외부의 구성원(대부분 해당 소프트웨어를 주문한 고객)이 테스트합니다. 나중에 최종 사용자가 테스트합니다.

수용 테스트 주도 개발(ATDD)이란 무엇입니까?

인수 테스트 주도 개발(ATDD)은 사용자 중심의 테스트 자동화 접근 방식입니다. 테스트 주도 개발(BDD) 환경에서 개발자는 자신의 관점에서 테스트를 작성합니다. ATDD는 반대로 작동합니다. 개발자, QA, 고객 등 여러 팀이 협업하여 애플리케이션에 기능을 통합하기 전에 인수 테스트 케이스를 준비합니다. 사용자 중심 접근 방식과 개발팀과 기능 전문가 간의 원활한 협업을 통해 개발된 애플리케이션은 인수 기준을 충족할 가능성이 높아집니다. ATDD를 사용하면 기능 테스트가 쉽고 효과적입니다.

행동 주도 개발(BDD)과 ATDD는 많은 유사점을 공유합니다. 하지만 한 가지 중요한 측면에서 차이가 있습니다. BDD는 기능의 동작에 초점을 맞추는 반면, ATDD는 요구 사항에 초점을 맞춥니다.

수용 테스트 주도 개발의 역사

켄트 벡은 2003년 저서 '테스트 주도 개발: 사례'에서 수용 테스트 주도 개발 환경(ATDD) 개념을 처음 언급했습니다. 그는 이것이 사실상 불가능하다고 주장했습니다. 그러나 비즈니스 이해관계자 간의 원활한 협업을 지원하는 오픈소스 테스트 자동화 도구인 Fitnesse의 인기로 ATDD가 실현되었습니다.

ATDD는 애플리케이션의 사용자 요구 사항을 명확하게 이해하고 전체 개발 프로젝트의 가이드 역할을 합니다. 또한 여러 팀 간의 원활한 협업을 지원합니다. ATDD에 사용되는 도구로는 Robot Framework, TestNG, Fitnesse, Thucydides, EasyB 등이 있습니다.

수용 테스트 및 ATDD를 위한 로봇 프레임워크

이 프레임워크를 사용하기 전에 도구의 핵심 측면을 이해하는 것이 중요합니다.

  1. 테이블 기반 테스트 케이스: 이 도구를 사용하면 간단한 표 형식으로 키워드를 사용하여 테스트 사례를 작성할 수 있습니다.
  2. 키워드 : 이 도구는 테스트 케이스 작성을 위한 기본 키워드를 제공합니다. 오픈 소스 라이브러리에서 키워드를 가져오거나 직접 키워드를 생성할 수도 있습니다.
  3. 라이브러리 : 이 도구는 Selenium 라이브러리, iOS 라이브러리, 디버그 라이브러리, FTP 라이브러리 등 다양한 라이브러리를 지원합니다.
  4. 자료 : 이 도구를 사용하면 외부 소스에서 키워드가 포함된 로봇 파일을 가져올 수 있습니다.
  5. 변수: 이 도구는 스칼라 변수, 사전 변수, 목록 변수의 세 가지 유형의 변수를 지원합니다.
  6. 태그 : 이 도구를 사용하면 테스트 케이스에 태그를 지정하여 테스트 모음을 실행하는 동안 테스트 케이스를 추가하거나 생략할 수 있습니다.
  7. 보고서 및 로그: 이 도구는 HTML과 로그 파일 형식으로 테스트 세부 정보를 제공합니다.

로봇 프레임워크 시작하기

이 수용 테스트 프레임워크를 실행하기 위한 전제 조건은 다음과 같습니다.

  1. PIP를 사용한 Python
  2. 로봇 프레임 워크
  3. wx파이썬
  4. RIDE

1단계: 파이썬 설치

다음 웹사이트를 방문하여 Python 소프트웨어를 다운로드하세요.

https://www.python.org/downloads/

운영 체제(예: Windows)에 맞는 최신 버전을 다운로드하세요.

로봇 프레임워크 파이썬

Python 소프트웨어를 두 번 클릭하여 설치를 시작하세요.

로봇 프레임워크 파이썬 32비트 설치

'지금 설치'를 클릭하면 기본 패키지를 설치할 수 있습니다. pip, IDLE, 그리고 설명서가 함께 제공됩니다. 또는 '설치 사용자 지정'을 선택하여 원하는 기능을 선택할 수 있습니다.

설치 프로그램에 'PATH에 Python 3.8 추가' 옵션이 있습니다. 이 상자를 선택하면 도구가 환경 변수에서 Python 경로를 자동으로 업데이트합니다.

파이썬 고급 옵션

설치 옵션을 사용자 지정하고 위치를 선택한 후 설치를 클릭하여 설치 절차를 시작합니다.

파이썬 설치 진행 상황

완료되면 Python Windows 도구에 기여한 Mark Hammond에 대한 감사 메모를 보실 수 있습니다.

파이썬 설치 성공

Python과 pip가 올바르게 설치되었는지 확인하려면 명령 프롬프트를 열고 version 명령을 실행하세요.

  • python - 버전
  • 핍 – 버전

pip는 기본적으로 Python과 함께 설치됩니다.

파이썬 핍

이제 Python과 pip가 설치되었고 사용할 준비가 되었습니다.

2단계: 환경 변수 구성

Python과 pip를 설치한 후 경로를 추가하여 환경 변수를 설정해야 합니다. 이를 위해서는

  • 시스템 -> 고급 시스템 설정 -> 고급 -> 환경 변수로 이동합니다.

환경 변수

Python이 설치된 폴더 경로를 시스템 변수와 사용자 변수에 추가합니다. Python 설치 시 이 옵션을 선택했기 때문에 경로가 이미 업데이트되어 있는 것을 확인할 수 있습니다.

3단계: 로봇 프레임워크 설치

명령 프롬프트를 열고 python 폴더로 이동하여 다음 명령을 입력합니다.

  • Pip로 로봇프레임워크 설치

로봇 프레임워크 설치

Robot Framework가 성공적으로 설치되었습니다. version 명령을 사용하여 설치 여부를 확인할 수 있습니다.

  • 로봇 버전

4단계: wxPython 설치

다음 링크에서 wxPython 소프트웨어를 다운로드하세요:

명령 프롬프트를 열고 다음 명령을 입력하세요.

  • Pip 설치 –u wxPython

로봇 프레임워크 설치

이제 wxPython 버전 4.1.0이 성공적으로 설치되었습니다.

5단계: RIDE 설치

RIDE를 설치하려면 명령 프롬프트를 열고 다음 명령을 입력하세요.

  • pip로 robotframework-ride를 설치하세요

로봇 프레임워크 설치

이제 RIDE를 사용할 준비가 되었습니다.

라이딩 준비 완료

RIDE를 열려면 명령 프롬프트를 열고 다음 명령을 입력하세요.

  • ride.py

최신 Python 버전(예: 3.8.1)은 RIDE를 지원하지 않습니다. Future Ride 2.0을 기다려야 합니다. 2020년 7월에 출시된 베타 버전은 GitHub 사이트에서 다운로드할 수 있습니다.

https://github.com/robotframework/RIDE/releases

또는 명령 프롬프트를 열고 pip를 사용하여 베타 라이드 버전을 설치할 수 있습니다.

  • pip install –pre-upgrade Robot Framework-ride==2.0b1

핍 설치

pip는 ride 베타 버전을 설치합니다.

피프 라이드 변수

이제 명령 프롬프트를 열고 다음 명령을 입력하여 RIDE 편집기를 엽니다.

  • ride.py

라이딩에 오신 것을 환영합니다

Robot Framework를 사용하여 첫 번째 테스트 케이스 실행

첫 번째 테스트 케이스를 실행하려면 Windows 바탕 화면의 바로가기 링크를 사용하여 RIDE IDE를 엽니다. 또는 명령줄 인터페이스를 사용하여 RIDE를 열 수 있습니다.

명령 프롬프트를 열고 다음 명령을 입력하세요.

  • ride.py

로봇 프레임워크 테스트 데이터 편집기

파일 -> 새 프로젝트를 클릭하세요

로봇 프레임워크 새 프로젝트

프로젝트 이름을 입력하고 확인을 클릭하세요.

로봇 프레임워크 이름 입력

테스트 프로젝트 이름은 왼쪽 메뉴의 '테스트 스위트'에서 확인할 수 있습니다. 테스트 프로젝트를 마우스 오른쪽 버튼으로 클릭하고 '새 테스트 케이스'를 선택하세요.

로봇 새로운 테스트 사례

테스트 케이스의 이름을 지정하고 확인을 클릭합니다.

테스트 케이스 이름

이제 문서화 화면을 클릭하여 테스트 사례의 세부 정보를 문서화하세요.

테스트 케이스 로봇 전문가

Ride에서는 스크립트를 표 형식으로 작성할 수 있습니다. 각 키워드에 키워드와 값을 추가할 수 있습니다. 예를 들어, 'log'라는 키워드를 입력하고 테스트 세부 정보를 기록할 수 있습니다.

전문가 로봇 테스트

테스트 케이스를 저장하려면 '저장'을 클릭하세요.

이제 시작 버튼을 클릭하여 테스트 케이스를 실행할 수 있습니다. 또는 명령줄 인터페이스에서 이 테스트 케이스를 실행할 수도 있습니다.

명령 프롬프트를 열고 저장된 테스트 케이스 폴더로 이동합니다. 파일은 로봇 프레임워크 프로젝트 디렉터리의 스크립트 폴더 아래에 저장됩니다.

  • 로봇 -T Experitest1.robot

로봇 프레임워크 스크립트

테스트 케이스가 성공적으로 실행되었습니다. RIDE는 XML 형식의 출력 파일과 HTML 형식의 보고서 및 로그 파일도 생성합니다. HTML 파일을 열어 보고서를 확인할 수 있습니다. Windows에서 HTML 파일을 직접 열거나 명령 프롬프트에서 탐색기를 실행할 수 있습니다. 보고서 이름을 확인하고 명령 프롬프트에 다음 명령을 입력하세요.

  • 보고서-20200729-202047.html 시작

이 서비스는 일반적으로 YYYY/MM/DD 형식의 데이터와 HHMMSS 형식의 시간을 사용하여 보고서를 저장합니다.

전문가 테스트 보고서

테스트 실행 로그를 확인하려면 오른쪽 상단 모서리에 있는 로그를 클릭하세요. CLI를 사용하여 로그를 열 수도 있습니다.

  • log-20200729-202047.html을 시작하세요

테스트 로그

테스트 실행 로그에서 볼 수 있듯이 테스트는 키워드 기반으로 진행됩니다. 주어진 레벨에서 키워드와 주어진 메시지를 확인할 수 있습니다.

전문가 분석

또 다른 샘플 테스트 - 로그인 자격 증명 테스트

웹사이트를 열고 로그인 자격 증명을 검증하는 또 다른 샘플 테스트입니다. 또한, 이 테스트에는 데모 앱이 사용되었으며, 데모 서버는 http://localhost:7272의 로컬 호스트에서 실행됩니다.

페이지를 로그인

이제 새로운 프로젝트와 테스트 케이스를 만들고 다음 코드를 추가하세요.

*** 설정 ***

  • SeleniumLibrary를 사용한 Documentation Expertest 샘플 테스트입니다.
  • 라이브러리 SeleniumLibrary

*** 변수 ***

*** 테스트 케이스 ***

  • 유효한 로그인
  • 브라우저를 열어 로그인 페이지 만들기
  • 사용자 이름 입력 데모
  • 비밀번호 입력 모드
  • 자격 증명 제출
  • 환영 페이지가 열려 있어야 합니다
  • [해체] 브라우저 닫기

*** 키워드 ***

  • 브라우저를 열어 로그인 페이지 만들기
  • 브라우저 ${LOGIN URL} ${BROWSER}를 엽니다.
  • 제목은 로그인 페이지여야 합니다.
  • 사용자 이름 입력
  • [인수] ${username}
  • 입력 텍스트 사용자 이름 필드 ${username}
  • 비밀번호 입력
  • [인수] ${password}
  • 입력 텍스트 password_field ${password}
  • 자격 증명 제출
  • 로그인 버튼 클릭
  • 환영 페이지가 열려 있어야 합니다
  • 제목은 환영 페이지여야 합니다.

이 테스트 모음은 다양한 테스트 사례를 실행하고 잘못된 사용자 이름, 잘못된 비밀번호, 성공적인 로그인 등 다양한 시나리오에서 로그인 기능을 확인합니다.

결론적으로

비즈니스 환경이 기능 기반 개발에서 사용자 중심 접근 방식으로 전환함에 따라, 소프트웨어 개발 및 테스트 환경에서 데이터 기반 수용 개발(ADR)이 핵심적인 역할을 담당하게 되었습니다. Robot Framework는 이러한 목적에 부합합니다. 키워드 기반 테스트 방식을 사용하는 이 오픈소스 프레임워크는 수용 테스트를 쉽고 비용 효율적으로 실행할 수 있도록 지원합니다. 읽기 쉬운 구문과 사용하기 쉬운 인터페이스 덕분에 모든 규모의 테스트 기업에 적합한 도구입니다.

통합할 수 있는 다른 프레임워크를 보고 싶다면 Digital.ai Continuous Testing 자세히 살펴보다

당신은 또한 좋아할 거라