4. guitar 소개
• GUI Test Automation FramewoRk의 약자로써, GUI기반으로 테스트 자동화를 제
공하는 시스템
• Text형태의 스크립트 파일과 이미지 파일을 기반으로 웹 브라우저 화면에서 이미
지를 찾아 마우스 클릭 / 키보드 입력 / 화면 이미지 확인 등의 테스트 자동화 작
업을 수행
guitar 기술조사4
5. guitar 소개(계속)
• 스크립트
– 서술형태의 스크립트 사용
– Text 및 이미지 형태로 스크립트 관리
– Function 형태의 스크립트 구조
– 변수 기능 지원($)
– 조건문 지원
– AutoIt 내부 명령어 사용 가능
– 웹페이지 자바스크립트 오류 자동 인지
– 명령어 템플릿 기능 지원
guitar 기술조사5
8. 장점
• 테스트 케이스와 자동화 스크립트 통일
– 자동화 작업에 대한 인력과 시간 소요 줄어듬
• 이미지와 비 이미지(변수, 상수, 숫자) 영역을 구분하여 테스트 진행
guitar 기술조사8
9. 장점(계속)
• 테스트 후 리포트가 자동으로 생성
– 테스트 시간 클릭 시 해당 시간에 진행된 테스트의 상세 화면으로 이동하여 실행시간,
상세 로그 확인 가능
– 테스트 실패한 경우 실패 사유 확인 가능
guitar 기술조사9
10. 장점(계속)
• 이미지를 대상으로 테스트 진행
– 이미지 테스트 시 파일명 구조를 이용하여 대상 확인
– 이미지명 + “_” + 브라우저명 “ + “[XY좌표]” + “.png”
예) IE에서 “네이버지도” 이름으로 캡쳐 시 네이버지도_[100,100,50,20].png
예) FireFox에서 “네이버지도” 이름으로 캡쳐 시 : 네이버지도_FIREFOX_[100,100,50,20].png
• 페이지가 접근할 때 마다 바뀌는 Rolling Image 테스트 가능
guitar 기술조사10
11. 장점(계속)
• 다중 target
– 이미지를 확인하거나 클릭할 때 복합적인 상태의 이미지를 클릭하거나 확인해야 하는
경우 테스트 가능
– 다중 target은 따옴표로 묶어 주며, 각 target들은 “,”로 구분하여 사용 가능
– 예 ) 특정 “거리뷰” 아이콘을 클릭하고자 할 때
• 와 같이 붙어있는 상태를 이미지 1개를 캡쳐 하여 사용 가능
• 브라우저 별로 위치가 미세하게 틀려져 테스트가 틀린 것으로 나올 수 있음
• 이미지를 따로 복사하여 스크립트 상에서 하단 스크립트 입력
[ 검색결과의 “화로사람분당미금점, 거리뷰버튼”을 클릭한다 ]
guitar 기술조사11
12. 단점
• 테스트 시 다른 작업 진행 불가
– 마우스를 이용하여 테스트 하는 경우 마우스 커서 같이 움직임
– 테스트 시작 시 guitar가 최소화 되면서 스크립트 확인 불가능
• 테스트 진행 속도 조절 불가
– Selenium의 경우 line간 진행 속도 조절 가능
• 라인별 일시 정지 불가
– 실행 하려는 부분을 block 지정 후 을 클릭하면 해당 부분 실행 가능
– Selenium의 경우 해당 라인에 break를 지정하면 지정된 line까지 실행 후 멈춤
• workpath 하위에 위치 하지 않으면 error 발생
– workpath를 변경하려면 GUITAR 폴더 내 GUITAR.ini에서 변경
guitar 기술조사12
13. 단점(계속)
• 테스트 케이스 초기 작성 시 시간 소요
– Selenium에는 녹화 기능이 있어 target을 클릭 하여 지정 가능
– guitar는 해당 스크립트, 이미지를 수동으로 등록해야 함
• 테스트 결과 창이 떠 있는 경우 target browser를 찾지 못함
– IE의 경우 새 창 여러 개 띄우다 테스트 종료
– target browser를 못 잡는 경우 멈춤
– 프로그램이 멈출 경우 ESC, TAB키 동작 안함
guitar 기술조사13
15. guitar VS Selenium
• 비교
guitar 기술조사15
guitar Selenium
대상지정방법 수동 마우스 지정 & 수동
대상지정형식
이미지 Xpath 형식
브라우저 지원
Cross Browser
(IE, Chrome, FireFox)
FireFox
리포트 생성여부 ○ X
다른 작업 진행
가능 여부
X ○
테스트 속도 조절 X ○
17. 종합
• guitar는 이미지 대상 테스트 시 유용
– DNSSENTRY에서 Chart가 존재하는지 여부 확인 가능
– 차트 끊김, 데이터 미 일치 여부는 사람이 직접 확인 해야 함
– DNSSENTRY의 이미지는 동적으로 데이터가 변하기 때문에 이미지 대상 테스트는 불필
요
• 문자열 비교는 기존에 사용한 Selenium에서 사용 가능
• 테스트에 사용되는 이미지를 guitar 내 캡처를 이용하여 모두 저장해야함
– guitar에서 제공하는 캡처를 이용해야 파일명이 guitar에서 사용되는 구조로 생성됨
• 이미지가 많은 portal 사이트에 유용
– Naver에서는 Naver 지도 테스트 시 사용
guitar 기술조사17