본문으로 건너뛰기

© 2026 Molayo

GitHub요약2026. 05. 20. 16:23

MigoXLab/webqa-agent

요약

WebQA Agent는 인간처럼 웹을 이해하고 테스트 케이스 생성부터 기능, 성능, UX 평가까지 수행하는 완전 자동화된 웹 테스트 에이전트입니다. 생성 모드와 실행 모드를 통해 새로운 기능의 종합 QA부터 반복적인 회귀 테스트까지 다양한 시나리오를 지원합니다.

핵심 포인트

  • 생성 모드(Generate Mode)와 실행 모드(Run Mode)를 통해 유연한 테스트 시나리오 제공
  • UI 액션, 상태 검증, UX 검증을 포함한 기본 도구 내장
  • Lighthouse 기반 성능 테스트 및 Nuclei 기반 보안 스캐닝 등 커스텀 도구 확장 가능
  • CLI 환경뿐만 아니라 Docker/K8s를 통한 풀스택 웹 대시보드 배포 지원

WebQA Agent가 마음에 드신다면, GitHub에서 ⭐를 눌러주세요!

🤖 WebQA Agent는 인간처럼 웹을 이해하는 완전 자동화된 웹 테스트 에이전트(agent)입니다. 테스트 케이스 생성부터 기능, 성능, UX(사용자 경험)를 엔드 투 엔드(end-to-end)로 평가합니다. ✨ GUI/CLI를 통해 직접 사용하거나, OpenClaw 스킬로 사용할 수 있습니다.

  • 핵심 기능 (Core Features)
  • 예시 (Examples)
  • 빠른 시작 (Quick Start)
  • CLI 사용법 (CLI Usage)
  • WebQA Agent 도구 확장하기 (Extending WebQA Agent Tools)
  • 배포 (Deployment)
  • 로드맵 (RoadMap)
  • 감사 (Acknowledgements)
  • 라이선스 (License)

WebQA-Agent는 서로 다른 시나리오를 지원하기 위해 두 가지 테스트 모드인 **🤖 생성 모드 (Generate Mode)**와 **📋 실행 모드 (Run Mode)**를 제공합니다.

기능 (Capability)🤖 생성 모드 (Generate Mode)📋 실행 모드 (Run Mode)
핵심 기능 (Core Features)AI 기반 탐색 -> 동적 생성 -> 정밀한 실행지침 및 예상 검증 결과에 기반한 실행
사용 사례 (Use Cases)새로운 기능, 종합적인 품질 보증 (QA)반복 가능하고 회귀 테스트 (regression testing)가 필요한 시나리오
사용자 입력 (User Input)최소한의 입력: URL 또는 한 문장의 비즈니스 목표구조화된 입력: 간단한 자연어 단계 설명
장점 (Advantages)성찰 기반 계획(Reflection-based planning), UI 변경에 대한 적응성; 종합적인 QA를 위한 기능/성능/보안/UX 평가 설정 가능안정적이고 예측 가능한 결과; 셀렉터(selector) 유지보수 불필요; 실시간 콘솔(Console) 및 네트워크(Network) 모니터링

사용 및 배포 (Usage & Deployment): CLI 실행을 지원합니다 (CLI 사용법 참조). 또한 시각적 관리를 위한 웹 인터페이스와 함께 풀스택 배포(Local / Docker / K8s)를 지원합니다. 배포(Deployment) 섹션을 참조하세요.

기본 도구 (Default Tools) (항상 활성화됨):

UI 액션 (UI Actions): 브라우저 상호작용 (클릭, 타이핑, 탐색)
UI 어설션 (UI Assertions): 상태 검증
UX 검증 (UX Verification): 텍스트 오타 확인, 레이아웃 분석

커스텀 도구 (Custom Tools) (선택 사항, 설정 가능):

성능 (Performance): Lighthouse 기반 성능 테스트
보안 (Security): Nuclei 취약점 스캐닝
링크 탐지 (Link Detection): 동적 링크 탐색

config.yaml에서 커스텀 도구를 활성화할 수 있습니다:

test_config:
  custom_tools:
    enabled:
      ...

🛠️ CLI 빠른 시작 (CLI Quick Start) 또는 🖥️ 풀스택 배포 (Full-stack Deployment, 웹 대시보드) 중에서 선택하세요.

uv (Python>=3.11) 사용을 권장합니다:

# 1) 프로젝트 생성 및 설치
uv init my-webqa && cd my-webqa
uv add webqa-agent
...

CLI 사용법(CLI Usage)에서 더 자세한 CLI 관련 내용을 확인하세요.

시각적 대시보드(Visual Dashboard), 테스트 관리(Test Management) 및 히스토리(History)를 사용하려면 Docker Compose로 시작하세요:

git clone https://github.com/MigoXLab/webqa-agent.git
cd webqa-agent/deploy/docker-compose
cp .env.example .env
...

다음 주소로 접속하세요:

http://localhost

다른 배포 방법은 배포(Deployment) 섹션을 참조하세요.

WebQA Agent는 초기화(Initialization), 자율 탐색(Autonomous Exploration), 케이스 실행(Case Execution) 및 Web UI 실행을 위한 간결한 명령줄 인터페이스(CLI)를 제공합니다.

명령 (Command)설명 (Description)일반적인 인자 (Common Arguments)
init설정 파일 초기화-m <gen/run> : 모드 지정; -o <path> : 출력 경로; --force : 기존 파일 덮어쓰기
gen생성 모드 (Generate Mode): AI 기반 테스트 생성 및 실행-c <path> : 설정 경로; -w <n> : 병렬 워커 (Parallel Workers)
run실행 모드 (Run Mode): YAML로 정의된 테스트 케이스 실행-c <path/dir> : 설정 파일 또는 폴더; -w <n> : 병렬 워커 (Parallel Workers)

예시 (Examples):

# 실행(Run) 모드 설정 초기화
webqa-agent init -m run
# 4개의 병렬 워커로 디렉토리 내의 모든 케이스 실행
...
  • 성능 테스트 (Lighthouse):
    npm install lighthouse chrome-launcher

(Node.js ≥18 필요) - 보안 테스트 (Nuclei):

brew install nuclei # macOS
nuclei -ut # 템플릿 업데이트
# Linux/Windows: https://github.com/projectdiscovery/nuclei/releases

설정 파일에는 테스트 유형을 정의하기 위해 test_config 필드가 반드시 포함되어야 합니다.

비즈니스 목표 (Business Objectives): AI 테스트의 초점과 커버리지(Coverage)를 안내하기 위한 비즈니스 목표를 지정합니다.
커스텀 도구 (Custom Tools): 성능 (Lighthouse), 보안 (Nuclei), 버튼 체크 및 링크 탐지(Link Detection)와 같은 선택적 도구입니다.
동적 단계 생성 (Dynamic Step Generation): 실행 중 새로운 UI 요소가 감지되면 추가 테스트 단계를 자동으로 생성합니다.
필터 모델 (Filter Model): 계획 효율성(Planning Efficiency)을 높이기 위해 페이지 요소를 사전 필터링하는 경량 모델을 구성합니다.

자세한 내용은 docs/MODES&CLI.md를 참조하십시오.

target:
url: https://example.com # 테스트할 웹사이트 URL
description: 웹사이트 QA 테스트
...

실행 모드(Run Mode) 설정에는 반드시 cases 필드가 포함되어야 합니다.

멀티모달 상호작용 (Multi-modal Interaction): action을 사용하여 페이지의 가시적인 텍스트, 이미지 또는 상대적 위치를 설명합니다. 지원되는 브라우저 액션(browser actions)에는 클릭(click), 호버(hover), 입력(input), 삭제(clear), 키보드 입력(keyboard input), 스크롤(scrolling), 마우스 이동(mouse movement), 파일 업로드(file upload), 드래그 앤 드롭(drag-and-drop), 대기(wait)가 포함되며, 페이지 액션(page actions)에는 탐색(navigation), 뒤로 가기(back)가 포함됩니다.

멀티모달 검증 (Multi-modal Verification): verify를 사용하여 에이전트가 경로를 이탈하지 않는지 확인하며, 시각적 콘텐츠, URL, 경로 및 이미지-요소 결합 조건을 검증합니다.

엔드 투 엔드 모니터링 (End-to-End Monitoring): Console 로그와 Network 요청 상태를 모니터링하며, 알려진 오류를 무시하기 위한 ignore_rules 설정을 지원합니다.

자세한 내용과 테스트 케이스 작성 사양은 docs/MODES&CLI.md를 참조하십시오.

target:
url: https://example.com # 대상 웹사이트 URL
llm_config: # LLM 설정
...

테스트 보고서는 reports/ 디렉토리에 생성됩니다. HTML 파일을 열어 상세 결과를 확인하십시오.

WebQA Agent는 도메인 특화 테스트 역량을 위한 **커스텀 도구 개발 (custom tool development)**을 지원합니다.

문서설명
커스텀 도구 개발 (Custom Tool Development)커스텀 도구 생성을 위한 빠른 참조
LLM 컨텍스트 문서 (LLM Context Document)AI 보조 개발을 위한 종합 가이드 (vibe coding에 유용)

기여(contributions)를 환영합니다! 예시를 보려면 기존 도구들을 확인해 보세요.

테스트 관리, 예약된 작업 및 실행 이력을 갖춘 **지속적인 웹 대시보드 (persistent web dashboard)**가 필요한 팀은 풀스택 플랫폼을 배포하십시오:

방법사용 사례가이드
로컬 개발 (Local Development)개인 개발 및 디버깅deploy/README.md
...

💡 내부 로직 확장: WebQA Agent는 팀의 인프라(내부 SSO, OSS 객체 스토리지, 내부 LLM 통합 등)를 기반으로 내부 로직을 확장하는 것을 지원합니다. 필요에 맞게 자유롭게 커스터마이징하고 개발할 수 있습니다. deploy/README.md

참고: 웹 대시보드 플랫폼은 현재 중국어로만 제공됩니다.

  • 상호작용 및 시각화 (Interaction & Visualization): 추론 과정 (reasoning processes)의 실시간 표시

  • 생성 모드 확장 (Generate Mode Expansion): 추가적인 평가 차원 (evaluation dimensions)의 통합

  • 도구 에이전트 컨텍스트 통합 (Tool Agent Context Integration): 더욱 포괄적이고 정밀한 실행

  • natbot: GPT-3를 이용한 브라우저 제어

  • Midscene.js: 웹, Android, 자동화 및 테스트를 위한 AI 오퍼레이터 (AI Operator)

  • browser-use: 브라우저 제어를 위한 AI 에이전트 (AI Agent)

이 프로젝트는 Apache 2.0 라이선스 (Apache 2.0 License) 하에 배포됩니다.

AI 자동 생성 콘텐츠

본 콘텐츠는 GitHub AI Coding Assistants의 원문을 AI가 자동으로 요약·번역·분석한 것입니다. 원 저작권은 원저작자에게 있으며, 정확한 내용은 반드시 원문을 확인해 주세요.

원문 바로가기
0

댓글

0