애플리케이션 테스트 자동화를 간편하게 만들어주는 다양한 도구들을 소개합니다.
그렇지만, 본격적인 설명에 앞서…
자동화 테스트란 무엇일까요?
자동화 테스트는 소프트웨어 테스트 방법의 일종으로, 자동화 도구를 사용하여 테스트 스위트를 실행함으로써 시스템 내의 오류를 찾아냅니다.
이 과정에서는 테스트 스크립트 실행, 실제 테스트 결과와 예상 결과 비교, 시스템 테스트 결과 기록, 스크린샷 캡처, 자동화된 결과 상세 보고서 생성 등이 모두 자동화 도구에 의해 자동으로 처리됩니다.
결과적으로, 애플리케이션 테스트를 수동으로 진행하며 시간과 노력을 소모할 필요가 없어집니다.
자동화가 비즈니스에 기여하는 점은 무엇일까요?
자동화는 여러 측면에서 비즈니스에 도움이 되며, 그 중 일부는 다음과 같습니다:
- 시간 및 비용 절감 – 자동화 테스트는 수동 테스트보다 훨씬 빠른 속도로 실행됩니다.
- 코드 재사용성 – 자동화 스크립트는 한 번만 생성하면 유지보수 부담이 적거나 전혀 없이 여러 번 실행할 수 있습니다.
- 간편한 보고 – 테스트 실행 후 자동화된 보고서를 생성합니다.
- 호환성 테스트 용이 – 다양한 운영 체제 및 브라우저 환경 조합에서 병렬 실행이 가능합니다.
- 유지보수 비용 절감 – 장기적으로 볼 때 수동 테스트에 비해 비용 효율적입니다.
- 최소한의 수동 개입 – 테스트 스크립트는 수동 개입 없이 자동 실행이 가능합니다.
- 최대 범위 확보 – 테스트 적용 범위를 확장하는 데 도움이 됩니다.
자동화된 테스트는 더욱 안정적이고 강력하며 유연합니다. 특히 반복적인 테스트 케이스를 실행하는 데 효과적이므로 회귀 테스트에 주로 사용됩니다.
시중에는 다양한 오픈 소스 및 상용 소프트웨어 테스트 자동화 도구가 존재합니다. 본 기사에서는 가장 유명하고 널리 사용되는 최고의 자동화 도구들을 (순서에 관계없이) 소개하겠습니다.
셀레늄
셀레늄은 오픈 소스이며, 아마도 가장 인기 있는 웹 자동화 도구일 것입니다.
주요 기능은 다음과 같습니다:
- 셀레늄은 별도의 설정이나 지원 비용 없이 순수 웹 기반 애플리케이션에 매우 적합한 도구입니다.
- ALM, Bugzilla 등과 같은 다른 도구들과 손쉽게 통합할 수 있도록 맞춤 설정이 가능합니다.
- 다양한 프로그래밍 언어를 지원합니다.
- 자바
- C#
- 루비
- 파이썬
- 펄
- PHP
- 자바스크립트
- 자바스크립트(Node.js)
- 하스켈
- R
- 다트
- TCL
- Objective-C
- 거의 모든 브라우저(Firefox, Chrome, Internet Explorer 등)를 지원하여 브라우저 간 테스트/호환성 테스트가 용이합니다.
만약 셀레늄의 작동 방식이 궁금하다면, 이 온라인 강좌를 참고해 보세요.
카탈론
카탈론은 API, 웹 및 모바일 테스트를 위한 무료 자동화 솔루션으로, 셀레늄 및 Appium을 확장하여 테스트 자동화를 지원합니다.

이 도구는 웹 UI 자동화에서 흔히 발생하는 문제를 강력한 기능 세트를 통해 해결합니다. 또한 Windows, macOS, Linux 등 주요 운영 체제에서 작동합니다.
카탈론 스튜디오의 주요 기능은 다음과 같습니다:
- 자동화 테스트 생성을 위한 매우 직관적이고 사용하기 쉬운 GUI
- 기술 사용자는 물론 비기술 사용자도 쉽게 사용하고 설치할 수 있습니다.
- 널리 사용되는 사전 정의된 자동화 프레임워크를 지원하며, 다수의 내장 키워드를 제공하여 처음부터 테스트를 생성하는 데 필요한 노력을 줄여줍니다.
- 행동 주도 개발(BDD) 오이 형식을 지원합니다.
- JIRA, Jenkins, GIT, qTest, Slack 등 널리 사용되는 CI 도구와 기본적으로 통합됩니다.
테스트 컴플리트
테스트 컴플리트는 SmartBear Software에서 개발한 기능 자동화 UI 테스트 플랫폼입니다. 테스트 컴플리트를 사용하면 Microsoft Windows, Android, 웹, 데스크톱 및 iOS 애플리케이션과 같은 주요 플랫폼에 대한 자동화된 기능 및 회귀 테스트 스위트를 만들 수 있습니다.
BDD 프레임워크를 기본적으로 지원하여 기술 사용자와 비기술 사용자 모두가 더 빠르고 쉽게 테스트를 실행할 수 있습니다.
주요 기능은 다음과 같습니다:
- 자동화된 UI 테스트 – 테스트 기록 및 재생 기능을 사용하여 데스크톱, 웹 또는 모바일 애플리케이션에 대한 UI 테스트를 쉽게 협업하고 자동화할 수 있습니다.
- 키워드 테스트 – 사용자가 자동화된 테스트 작업을 쉽게 수행할 수 있도록 키워드 작업 목록이 내장된 키워드 기반 테스트 편집기.
- 셀레늄과의 통합 – 셀레늄 테스트 스크립트를 테스트 컴플리트와 통합하여 테스트 커버리지를 대폭 향상시키고 테스트 노력을 최적화할 수 있습니다.
- 프로그래밍 언어 지원 – Python, JavaScript, VB Script, Delphi 등 널리 사용되는 주요 프로그래밍 언어를 지원합니다.
- 분산 테스트 – 별도의 워크스테이션, 가상 머신, 다른 운영 체제의 원격 머신 및 브라우저에서 여러 자동화된 테스트 사례를 실행합니다.
- 테스트 시각화 도구 – 예상 결과와 실제 결과 간의 빠른 비교를 제공하며, 기록 및 재생 중에 자동으로 스크린샷을 캡처합니다.
- 버그 추적 통합 – 문제 추적 시스템에 저장된 항목을 생성하거나 수정합니다. Bugzilla 및 JIRA와 같은 주요 버그 추적 도구를 지원합니다.
마이크로 포커스 UFT
마이크로 포커스 통합 기능 테스트(이전 명칭: QuickTest Professional)는 UFT라는 약어로 널리 알려진 자동화 기능 테스트 도구입니다. 원래 Mercury Interactive에서 개발되었으며, 2006년에 Hewlett Packard(HP)에 인수되었습니다.

UFT는 기능, 회귀 및 API(웹 서비스) 테스트에 널리 사용됩니다.
UFT의 주요 기능:
- 직관적인 UI는 사용하기 쉽고 탐색이 간편하며 결과 검증 및 보고서 생성 기능을 제공합니다.
- UFT는 고도의 숙련된 코더를 요구하지 않으며, 다른 객체 지향 프로그래밍 언어에 비해 쉽습니다.
- 다른 인기 있는 테스트 관리 도구(HP Quality Center)와 쉽게 통합하여 테스트를 예약하고 모니터링할 수 있습니다.
- 온라인 지원 및 HP 전담 지원 팀을 통해 기술적 문제를 해결할 수 있습니다.
토스카
토스카는 엔드 투 엔드 테스트 자동화에 사용되는 소프트웨어 자동화 테스트 도구로, Tricentis에서 개발했습니다.

토스카는 GUI 및 API를 비즈니스 관점에서 테스트하는 자동화 기능을 제공하며, 테스트 케이스 설계, 테스트 자동화, 테스트 데이터 설계 및 생성, 분석 등 다양한 유형의 테스트를 지원합니다. 또한 모델 기반, 위험 기반, 부하 및 성능 테스트를 지원합니다.
워크소프트
워크소프트 인증은 기존 자동화 테스트뿐만 아니라 비즈니스 프로세스 테스트에 초점을 맞춘 테스트 자동화 플랫폼을 제공합니다. Worksoft 솔루션은 핵심 애플리케이션이 변경되더라도 비즈니스 프로세스가 설계된 대로 지속적으로 작동하도록 보장합니다.

워크소프트는 특허받은 객체 작업 프레임워크 기술을 사용하여 기존 테스트 코딩을 제거하고 테스트 유지보수를 줄이며 재사용 가능한 테스트 라이브러리를 제공합니다. GUI를 사용하여 전체 테스트를 만들고 관리할 수 있습니다.
주요 기능:
- 실시간 탐색 테스트 자동화
- 기존 SoapUI 테스트 및 가상 서비스를 활용한 API 테스트 지원
- 테스트를 위해 SAP에서 자동으로 데이터 추출
- 300개 이상의 사전 구축된 SAP 엔드 투 엔드 테스트 시나리오 사용
아피움
아피움은 무료 모바일 자동화 테스트 도구입니다. 셀레늄 웹 드라이버와 쉽게 통합할 수 있어 모바일 자동화에 더 선호되는 선택입니다.

iOS 및 Android용으로 개발된 하이브리드, 네이티브 및 모바일 웹 애플리케이션의 자동화를 지원합니다.
주요 기능:
- 다양한 모바일 플랫폼에서 실행할 수 있는 테스트 작성
- 모바일 장치 없이 독립적으로 테스트 실행
프로트랙터
프로트랙터는 Angular 애플리케이션을 지원하는 엔드 투 엔드 테스트 프레임워크입니다. 실제 브라우저에서 애플리케이션 테스트를 실행하고 사용자가 상호 작용하는 것처럼 테스트를 수행합니다. Selenium 프레임워크의 JavaScript 구현인 webdriver.io의 Node.js 부분입니다.

주요 기능:
- 모델, 바인딩, 리피터 및 기본 WebDriver 로케이터 전략을 포함한 Angular 특정 로케이터 전략 지원
- 내장 대기 및 슬립 기능 지원
- Jasmine, Mocha, Cucumber 등과 같은 브라우저 간 테스트 및 동작 중심 개발 프레임워크 지원
- 작업이 필요할 때까지 WebDriver 명령을 수행하지 않으므로 프로트랙터의 페이지 객체와 같은 인기 있는 디자인 패턴을 쉽게 설정할 수 있습니다.
소프UI
소프UI는 REST 및 SOAP API 테스트를 위한 세계 최고의 오픈 소스 기능 도구 중 하나입니다. 사용하기 쉬운 그래픽 인터페이스(GUI)와 엔터프라이즈급 기능을 통해 회귀, 자동화된 기능 및 부하 테스트를 쉽고 빠르게 생성, 유지 관리 및 실행할 수 있습니다.
주요 기능:
- 간단하고 강력하며 직관적이고 사용하기 쉬운 GUI
- 기능, 자동화 및 부하 등 거의 모든 유형의 테스트 지원
- 데이터 기반 테스트 지원
- 다중 환경 테스트 지원
- Jenkins, TeamCity, Bamboo 등 모든 주요 CI 도구와의 통합 지원
결론
위에서 소개된 도구들이 애플리케이션 테스트 자동화에 대한 아이디어를 제공해 주었기를 바랍니다. 대부분 무료로 사용할 수 있으므로 어떤 도구가 귀하의 애플리케이션에 가장 적합한지 직접 확인해 보시기 바랍니다.
다음으로는 브라우저 간 테스트를 수행하는 방법에 대해 알아보세요.