test-management

2 개의 포스트

SmartBear QMetry GitLab 컴포넌트로 테스트 관리 효율화하기 (새 탭에서 열림)

SmartBear QMetry GitLab 컴포넌트는 GitLab CI/CD 파이프라인에서 생성된 테스트 결과를 QMetry Test Management Enterprise로 자동 업로드하여 테스트 관리 공수를 획기적으로 줄여줍니다. 이 통합은 수동 업로드로 인한 지연과 오류를 제거하고, 요구사항부터 실행 결과까지의 엔드투엔드 추적성을 보장하여 엔터프라이즈 환경에서의 품질 관리를 강화합니다. 결과적으로 개발 팀은 실시간 데이터와 AI 기반 인사이트를 바탕으로 더욱 빠르고 신뢰할 수 있는 릴리스 의사결정을 내릴 수 있습니다. **GitLab과 QMetry 통합의 주요 가치** * **수동 프로세스 제거**: JUnit, TestNG 등 다양한 형식의 테스트 결과를 파이프라인 완료 후 자동으로 업로드하여 QA 팀의 단순 반복 작업을 최소화합니다. * **추적성 및 규정 준수**: 테스트 결과를 특정 GitLab 커밋 및 빌드와 연결함으로써 금융, 항공우주, 의료 기기 등 규제 산업에서 필수적인 감사 추적(Audit Trail)을 완벽하게 지원합니다. * **피드백 루프 가속화**: 테스트가 완료되는 즉시 스테이크홀더가 결과를 확인할 수 있어, 문제 발생 시 즉각적인 조치가 가능하고 릴리스 주기가 단축됩니다. * **AI 기반 인사이트 활용**: 파이프라인의 실시간 데이터를 QMetry의 AI 엔진에 공급함으로써 취약한 테스트(Flaky tests) 식별 및 실패 예측의 정확도를 높입니다. **자동화된 테스트 결과 관리 워크플로우** * **테스트 실행**: GitLab CI/CD 파이프라인 내에서 단위 테스트, 통합 테스트 또는 E2E 테스트가 실행됩니다. * **결과 생성**: 테스트 도구에 의해 JUnit XML 또는 TestNG XML과 같은 표준 형식의 결과 파일이 생성됩니다. * **컴포넌트 호출**: GitLab CI/CD 카탈로그에 등록된 QMetry 컴포넌트가 파이프라인의 한 단계(Job)로 실행됩니다. * **API 자동 업로드**: 컴포넌트가 결과 파일을 읽어 QMetry API를 통해 지정된 프로젝트로 데이터를 전송하며, 이 과정은 별도의 수동 개입 없이 이루어집니다. **설정 및 보안 준비 사항** * **API 자격 증명**: QMetry Enterprise 인스턴스의 설정 메뉴에서 API Key를 생성해야 하며, 해당 키는 결과 업로드를 위한 쓰기 권한을 가져야 합니다. * **보안 유지**: 생성된 API Key는 보안을 위해 `.gitlab-ci.yml` 파일에 직접 노출하지 않고, 반드시 GitLab CI/CD 변수(Variables) 기능을 사용하여 관리해야 합니다. * **환경 구성**: 업로드를 위해 QMetry 인스턴스 URL(예: `https://company.qmetry.com`)과 테스트 결과를 업로드할 대상 프로젝트 정보를 사전에 확인해야 합니다. **실용적인 권장 사항** 데브섹옵스(DevSecOps) 성숙도를 높이려는 조직은 이 컴포넌트를 도입하여 '속도 기반의 품질 관리'를 실현할 수 있습니다. 특히 복잡한 규제 준수가 필요한 항공우주나 금융 분야의 팀에게는 이 자동화 도구가 감사 준비 시간을 단축하고 데이터 일관성을 유지하는 데 강력한 도구가 될 것입니다. 초기 설정 시 모든 테스트 결과를 한곳으로 모으는 것뿐만 아니라, QMetry 내에서 테스트 스위트 구조를 먼저 최적화한 후 자동화를 적용하는 것이 보다 체계적인 리포팅을 위해 권장됩니다.

토스인컴 QA Platform: ‘누구나 테스트할 수 있는’ 도구의 시작 (새 탭에서 열림)

토스 QA 팀은 반복되는 테스트 데이터 생성과 복잡한 API 호출 문제를 해결하기 위해 기존 Swagger API를 GUI 기반으로 추상화한 'QA Platform'을 구축했습니다. 이 도구는 테스트의 진입 장벽을 낮춰 QA뿐만 아니라 모든 팀원이 품질 검증에 참여하게 함으로써 제품 개발 속도를 획기적으로 높이는 결과를 가져왔습니다. 단순히 테스트를 자동화하는 것을 넘어, 품질을 제품 설계 과정의 일환으로 내재화하여 팀 전체가 확신을 가지고 움직일 수 있는 환경을 조성한 것이 핵심입니다. **Swagger 기반의 접근성 개선 (Phase 1)** * Swagger에 흩어져 있는 테스트 API들을 한곳에 모으고, 복잡한 JSON 작성 없이 버튼 클릭만으로 실행할 수 있는 GUI를 도입했습니다. * 사용자의 숙련도에 따라 입력 방식을 이원화했습니다. 'Normal 모드'는 복잡한 필드를 숨겨 누구나 쉽게 쓰게 했고, 'Swagger 모드'는 QA 매니저나 엔지니어가 세부적인 파라미터를 제어할 수 있도록 설계했습니다. * 환경 스위칭, 최근 실행 값 저장, API 응답 값의 자동 복사 기능 등 사소하지만 빈번한 번거로움을 줄여주는 UX 요소를 배치해 심리적 장벽을 낮췄습니다. **자동화의 대중화와 통합 관리 (Phase 2 & 3)** * QA 팀 내부에서만 활용되던 기존의 자동화 스크립트를 플랫폼 내 컨트롤러로 이식하여, 개발자나 기획자도 버튼 하나로 자동화 테스트를 수행할 수 있게 했습니다. * 복잡한 환경 설정이나 스크립트 실행 지식 없이도 자동화 자산을 활용할 수 있게 되어, 검증의 주체가 QA 팀에서 제품 팀 전체로 확장되었습니다. * 외부 도구에 의존하는 대신 조직의 고유한 테스트 방식에 최적화된 통합 관리 시스템을 구축하여, 테스트 설계부터 실행 및 관리까지의 전 과정을 하나로 연결하고 있습니다. **품질 검증에서 품질 설계로의 관점 전환** * 테스트가 '시간을 내서 해야 하는 특별한 작업'이 아니라 '생각나면 바로 하는 일상'이 되면서, 제품의 병목 현상이 제거되고 의사결정 속도가 빨라졌습니다. * 개발자가 기능을 완성하자마자 직접 검증할 수 있는 환경이 마련됨에 따라, 품질은 마지막 단계의 체크리스트가 아닌 개발 흐름 속에 자연스럽게 녹아드는 요소가 되었습니다. * QA 팀은 단순 반복적인 테스트 데이터 세팅 작업에서 벗어나, 더 고도화된 비즈니스 로직 분석과 리스크 관리에 집중할 수 있는 환경을 확보했습니다. 테스트가 쉬워지면 제품의 속도는 자연스럽게 빨라집니다. 기술적인 고도화만큼이나 중요한 것은 "누가 하느냐"에 갇혀 있던 테스트 권한을 "누구나 할 수 있는 구조"로 만드는 것이며, 이를 통해 팀 전체가 품질에 대한 공동의 책임과 확신을 갖는 것이 실질적인 제품 경쟁력으로 이어집니다.