본문 바로가기

2. Automation

01 - 테스트 자동화란

테스트 자동화


반복적이고 단순한 테스트 작업은 개발자에게 단순 노동의 어려움을 주지만, 프로젝트에서는 없어서는 안 되는 매우 중요한 작업

테스트 자동화는 거의 모든 테스트 케이스를 대상으로 일관되고 빠르게 테스트할 수 있기 때문에 개발자의 부담을 줄이고 소프트웨어의 신뢰도를 높일 수 있음



테스트 자동화의 효과

구분 

효과

안전성

실제 운영 / 서비스에 기반한 자동화 방안 구축

외부 요인을 차단한 테스트 계획 수립

전문성

도메인 전문가에 의한 전문화된 테스트 방법

테스트 표준화를 통한 효율적인 방안 구축

효율성

효율적인 테스트 자동화 운영 방안 구축

유지보수 업그레이드에도 동일한 테스트 방안 적용

비용 절감

개발자의 단순 노동 감소

오픈 소스 자동화 도구를 이용한 비용 절감


자동화에 필요한 테스트 스크립트 작성하는 것이 개발만큼 복잡하기도 하고, 어렵기 때문에 일부 프로젝트에서는 테스트 자동화 작업을 진행하기도 하다가 중단하기도 하고, 완료해도 오랫동안 유지 못하는 경우가 많음

하여, 테스트 자동화를 위해서는 체계적인 접근이 필요



테스트 자동화 프로세스


테스트 자동화 구축 

교육

기술 지원

품질 측정

테스트 자동화 설계

      

테스트 자동화 교육

 

테스트 자동화 

운용 지원

 

테스트 수행 

품질 측정 

테스트 자동화 

케이스 작성

 

테스트 자동화 

관리 교육

 

테스트 자동화 

유지보수 지원

 

테스트 자동화 

품질 측정

테스트 자동화 

스크립트 개발

 

 

 

 

 

 

추가 Add-in 

라이브러리 개발

 

 

 

 

 

 



테스트 자동화 도구


분류

제품명

연결 방식

특징

오픈소스

Sikuli 

Devices 연결 

이미지 인식 레코드

Pc 화면도 테스트 가능

Selenium

Devices 연결

Pc, Mobile 브라우져 환경 수행

웹 브라우져의 객체만 인식

Appium

Devices 연결 

Android, iOS 모바일 테스트 가능

Selenium 기반 모델  

Guitar

Devices 연결

Pc client 프로그램 및 스마트폰의 모바일 앱까지 테스트 가능

상용

Devices AnyWhere

Cloud 연결

HP-QTP 연동 가능

Sirocco

Cloud 연결

디바이스가 원격화면으로 연결하여 사용

일본 테스트 제품으로 최신 단말기 제공

Experitest

Devices 연결

HP-QTP 연동 가능

Quality Commander

Devices 연결

로보트 장착된 팔로 실제 단말기 테스트

로보트에 장착된카메라로 결함여부 판별

QC-Wing

Devices 연결

Android 만 가능

좌표, 이미지 인식 레코드



참고 : http://www.sw-eng.kr