클라우드 자동화(연재2-2) ― 전문가 추천 ‘Best 테스트 툴’
와이어샤크, 아카마이, 클라우드Qa, 엡 퍼펙트, 테스트 콜라보 등 10여 가지 데브옵스 팀에 최적, 신속․정확 사이트 모니터링․로드테스트, 다양한 OS 테스트 오픈소스 성능 툴도 다수, 특정 요구에 맞는 ‘사용자 정의’, 유연한 워크플로우 등
[애플경제 이보영 기자] 클라우드 자동화의 필수적인 요소가 클라우드 테스트 툴이다. 이는 클라우드 기반 애플리케이션의 효율적 작동을 위해 매우 중요한 아키텍처로 강조되고 있다. 그런 가운데 시중에선 기능이나 대중적 지명도, 품질 등에서 10여 가지 안팎의 클라우드 기반 테스트 툴이 활용되고 있다. 와이어샤크, 아카마이, 클라우드Qa, 엡 퍼펙트, 테스트 콜라보 등이 주로 꼽힌다.
우선 ▲ 아카마이 클라우드 테스트(Akamai Cloud Test)는 클라우드 인프라에서 자동화된 지능형 실시간 테스트를 제공할 수 있는 클라우드 성능 테스트 플랫폼이다. 이는 실제 성능 시나리오를 복제할 수 있는 테스트 엔진을 사용하려는 데브옵스팀에게 적합하다. 테스트 로드에 관계없이 이는 애플리케이션 내의 문제를 쉽게 선택하고 신속하게 기록할 수 있다는 점이 장점이다.
데브옵스팀은 아카마이 클라우드 테스트를를 통해 다양한 시뮬레이션 로드의 크기를 테스트하고 분석하여 즉각적인 결과를 얻을 수 있는 심층 분석 시스템에 액세스할 수 있다. 이는 또 엔터프라이즈 네트워크와 클라우드 애플리케이션을 테스트할 수 있는 능력을 갖추고 있을 뿐 아니라, API, 웹 사이트의 백엔드 성능 및 데이터베이스도 테스트할 수 있다.
다음으로 ▲‘클라우드Qa(CloudQA)’도 전문가들이 많이 추천하는 도구다. 이는 자동화된 웹 테스트를 통해 품질을 보증한다. 또 논리적 그룹화를 통해 테스트 사례를 만드는 것을 선호하는 경우, 가장 뛰어난 기능을 보장한다. 특히 테스트 팀의 광범위한 설정이나 설치 없이도 사이트 모니터링이나, 로드 테스트를 신속하게 시작할 수 있다는 점이 특징이다. 코드 없는 테스트 방법을 선호하는 데브옵스 팀에게도 적합하다. 클라우드 내이티브 기반의 데이터 라벨링 전문업체인 성남시 판교의 C사 관계자는 “클라우드QA는 특히 자동 회귀 테스트 프로비저닝도 만들어 더 많은 리소스를 절약하고 확장성을 높일 수 있다.”고 강조했다.
▲앱 퍼펙트(AppPerfect)는 애플리케이션 품질 보증 팀과 클라우드 개발자가 웹 기반 애플리케이션의 자동 테스트를 위해 주로 사용하는 클라우드 기반 도구다. 이는 모든 규모의 클라우드 인프라에서 적정한 품질인지를 쉽게 검증할 수 있게 한다. 또한 이는 여러 운영 체제 및 프레임워크에 걸친 테스트를 지원한다. 특히 웹 브라우저에서 녹음이나 재생을 할 수있고, 여러 팀의 공동 테스트를 지원하기도 하며, 짧은 시간에 많은 테스트 사례를 생성할 수 있다. 앞서 C사 관계자는 “여러 시스템에 테스트 스크립트를 배포하도록 지원하므로 다양한 스크립트를 구성하고, 손쉽게 테스트를 할 수 있다.”고 밝혔다.
▲클라우드 슬루스(Cloud sleuth)는 말 그대로 클라우드를 샅샅이 정탐 내지 탐사하듯 테스트 한다. 이는 웹 애플리케이션의 성능을 손쉽게 테스트, 모니터링하거나 기록하는 방법을 제공하는 클라우드 기반 테스트 도구다. 이를 사용하면 테스트 결과를 다른 팀원들과 공유하여 보다 효과적으로 협업할 수 있다. 또한 실제 사용자 트래픽과 웹 애플리케이션의 로드 조건을 쉽게 시뮬레이션할 수 있고, 웹 응용 프로그램 성능 문제를 분석하고 해결할 수 있는 광범위한 기능을 제공한다.
클라우드 제공업체인 V사의 박모 엔지니어링 팀장은 “특히 클라우드 슬루스는 부하 테스트를 쉽게 시작할 수 있는 사용자 친화적인 인터페이스를 갖추고 있어 사용하기 쉽도록 설계되었다.”면서 “이는 매우 유연하므로 사용자는 부하 테스트 시나리오를 자신의 특정 요구에 맞게 ‘사용자 정의’를 할 수 있다. 사용자가 실제 사용자 트래픽을 시뮬레이션할 수 있도록 하여 웹 애플리케이션이 피크 부하에서 어떻게 작동하는지 테스트할 수 있게 한다”고 경험을 들려줬다.
시중에서 인기있는 클라우드 테스트 도구 중 하나로 ▲네소스(Nessus)를 꼽을 수 있다. 이는 테스터(tester)들이 포괄적인 보안 평가를 할 수 있도록 설계된 제품이다. 네트워크 검색, 서버 강화 및 규정 준수 검사 등 다양한 기능을 제공한다. 조직의 데이터 침해 위험을 효율적으로 줄이고, 사용이 간편하며 웹 기반 응용프로그램을 포함한 모든 응용프로그램의 취약성을 검색할 수도 있다. 특히 앞서 V사의 박 팀장에 따르면 사용자에게 검색 예약, 검색 결과 보기, 보고서 내보내기 옵션 등 취약성을 검색, 관리할 수도 있다. 또한 장치나 시스템에 에이전트를 설치할 필요가 없고, SQL 주입이나 사이트 간 스크립팅 등 웹 응용 프로그램의 취약성을 검색할 수도 있다.
오픈 소스 네트워크 성능 툴인 ▲와이어샤크도 주목받고 있다 이는 애초 패킷 캡처 도구로 출시되었지만 거듭된 업데이트된 버전을 통해 네트워크 관리자가 네트워크를 통해 전송되는 데이터의 테스트를 자동화할 수 있게 되었다. 그래픽 사용자 인터페이스(GUI)도 갖추고 있으며 윈도, 리눅스, macOS와 같은 여러 운영 체제에서 편리하게 실행할 수 있다. 이 밖에도 XML, PostScript, CVS 형식과 같은 다양한 형식으로 데이터를 내보내는 기능, 네트워크를 통해 전송되는 모든 데이터의 실시간 보기, 네트워크 프로토콜 분석에 따른 포트 번호별 강조 표시, 다양한 수준의 암호화를 위한 암호 해독 기능 등을 갖추고 있다.
AI와 자연어 처리(NLP)에 의한 ▲테스트시그마(Testsigma)도 눈길을 끈다. 이는 인공지능(AI)과 자연어 처리(NLP)를 활용해 테스트 생성, 유지보수, 실행 과정을 더 쉽게 할 수 있도록 하는 클라우드 기반 테스트 자동화 툴이다. 테스트 자동화를 시작하고자 하지만 팀의 기술 전문 지식이 부족한 조직에 이상적이라는게 전문가들의 설명이다. “이를 사용하면 AI로 구동되는 테스트 케이스 생성 및 유지보수 기능을 활용할 수 있고, 지속적인 통합도 기대할 수 있다”는 V사 박 팀장은 “이로 인해 제품의 품질을 최고 수준으로 보장하는 동시에 애플리케이션 개발의 다른 측면에 집중할 수 있어 좋다”고 전했다.
▲젠킨스(Jenkins)는 소프트웨어 개발 프로세스의 모든 단계를 자동화하는 데 사용할 수 있는 자급자족 자동화 테스트 도구다. 최근 ‘메타버스 엑스포’에 참가했던 클라우드 제공업체 W사의 한 관계자는 이에 대해 “대부분의 프로그래밍 언어와 함께 작동할 수 있는 수많은 플러그인이 있어 가장 다재다능한 클라우드 기반 테스트 도구 중 하나”라며 “특히 여러 시스템에 작업을 분산하여 테스트 프로세스를 가속화할 수 있고, 지속적인 통합 서버로 사용하여 빌드 및 테스트 프로세스를 자동화할 수 있으며, 확장성이 뛰어나서 조직의 특정 요구에 맞게 플러그인을 사용하여 사용자 정의를 할 수 있다.”고 높이 평가했다.
역시 오픈 소스 툴인 ▲와이티르(Watir)는 테스트 목적으로 웹 브라우저를 자동화할 수 있는 툴이다. 마치 사람처럼 브라우저와 상호 작용하면서 링크를 클릭하고 양식을 작성하고 내용을 확인할 수 있다. 초보자도 간단하고 쉽게 사용할 수 있으며, 회귀 테스트에도 활용할 수 있고, 기능적 버그, UI 버그, 성능 문제 등 응용 프로그램의 문제를 파악하는 데도 유용하게 쓰인다. 이는 무엇보다 오픈 소스 툴로서, 키보드와 마우스 이벤트를 시뮬레이션하여 웹 브라우저를 자동화할 수 있다. 인터넷 익스플로러, 파이어폭스, 사파리, 크롬, 오페라를 포함한 여러 웹 브라우저를 지원하며, 데스크톱 컴퓨터, 노트북, 스마트폰, 태블릿을 포함한 여러 장치에서 웹 응용 프로그램을 테스트할 수 있다.
유연한 오픈 소스 툴인 ▲블레이즈 미터(Blaze meter)는 소프트웨어 개발 라이프사이클의 모든 단계에서 테스트를 지원하는 유연한 툴이며, 누구나 쉽게 사용할 수 있다. 비(非)클러스터형 사용자 인터페이스를 제공하므로 테스트 보고서를 쉽게 읽고 이해하게 한다. “불안정한 고객 관계에서 애플리케이션의 대응 능력을 파악할 수 있고, 맞춤형 테스트 시나리오나 워크플로우를 개발하고, 성능 테스트 매개 변수와 ‘도착률’을 구성할 수 있다”는게 경험자들의 얘기다. 이 밖에도 응답 시간 백분위수나 실시간 시스템 오류와 같은 뛰어난 성능 보고 기능이 있고, ‘아파치 제이미터(Apache Jmeter)와의 원활한 통합과 같은 강력한 통합기능이 있다.
애초 ‘앱트왝’(AppThwack)으로 알려진 ▲AWS 디바이스 팜(AWS Device Farm)의 경우 광범위한 디바이스나 프레임워크, 운영 체제를 망라하며 모바일 및 웹 애플리케이션을 테스트한다. IT 팀은 이를 사용하여 소프트웨어 제품이 가동하기 전에 그 성능을 평가할 수 있다. 이동 중에 로그, 스크린샷 및 비디오를 생성할 수 있는 테스트 기능을 제공하며, 애플리케이션에 결함이 있는 위치에 대한 명확한 정보를 제공한다. 특히 ‘종량제 스트림’을 비롯, 예산에 따라 테스트를 예약할 수 있도록 하는게 특징이다. 예를 들어, IT팀이 한 시간 동안만 실행할 수 있는 일부 테스트 매개 변수를 설정하기로 결정할 수도 있으며, 그런 경우 서비스는 한 시간 테스트 실행 비용만을 제공하는 식이다.
지난해 출시된 ▲테스트 콜라보(Test Collab) 역시 IT 팀이 애플리케이션의 품질 보증을 테스트하도록 설계된 클라우드 테스트 관리 툴이다. 여러 팀이 협력하여 애플리케이션이 허용 가능한 표준을 충족하는지를 확인하기 위해, 최신 데브옵스 워크플로우를 지원하도록 설계되었다. 또한 팀이 도구를 호스팅할 때 취할 경로를 결정할 수 있고, 클라우드 서버나 개인 서버에서 호스트할 정도로 유연성이 있어 좋다. 한국클라우드산업협회의 한 관계자는 “이 툴을 통해 IT 팀이 테스트 스케줄링, 요구사항 관리 및 호스팅 계획 등을 한층 유연하게 대처할 수 있다”면서 “특히 이 툴을 사용하면 버전 관리가 가능하므로 IT 팀은 애플리케이션의 변경 사항을 쉽게 추적할 수 있고, 서버에서 호스팅할지 여부도 탄력적으로 결정할 수 있다”고 밝혔다.