openai‑testing‑agent‑demo 소개
openai‑testing‑agent‑demo은 OpenAI에서 오픈소스로 공개한 UI 자동 테스트 에이전트 데모 프로젝트입니다. Playwright와 OpenAI의 Computer-Using Agent(CUA) 모델을 활용한 최신 테스트 접근법을 적용하였으며, 실제 동작하는 코드를 통해 AI 기반 테스트 자동화를 이해할 수 있습니다.
OpenAI는 UI 상호작용을 인식하고 실행할 수 있는 ‘컴퓨터 사용 에이전트(Computer-Using Agent, CUA)’ 기술을 Web UI 자동 테스트와 결합한 데모 저장소인 openai‑testing‑agent‑demo를 공개했습니다. 이 저장소는 개발자가 테스트 시나리오를 정의하면 CUA 모델이 Playwright를 통해 웹 브라우저를 직접 제어하며 시나리오에 따라 UI를 자동으로 탐색하는 방식으로 동작합니다 .
저장소는 크게 세 개의 모듈로 구성되어 있습니다:
- frontend: 테스트 시나리오를 설정하고 결과를 시각화하는 Next.js 기반 UI
- cua-server: OpenAI CUA 모델과 Playwright를 연결해 실제 브라우저 조작을 중계하는 Node.js 서버
- sample-test-app: 에이전트가 자동으로 테스트할 수 있는 예제 전자상거래 웹 애플리케이션
Playwright 기반 브라우저 제어 + CUA 모델 이용이라는 조합은, 복잡한 UI 흐름을 코드 작성 없이 자연어 기반 테스트 시나리오로 자동화할 수 있다는 점에서 큰 의미가 있습니다.
기존 테스트 자동화 방식(WebDriver, Selenium, Cypress 등)은 대부분 엔지니어가 직접 요소 선택자와 액션 로직을 작성해야 합니다. 반면, CUA 기반 방식은 자연어로 시나리오를 기술하면 모델이 요소를 인식해 자동으로 테스트 흐름을 따라갑니다.
openai‑testing‑agent‑demo의 주요 특징
- 자연어 기반 테스트 시나리오: 사람이 작성한 자연어 테스트 플로우를 CUA가 해석
- Playwright 통합: OpenAI 모델이 Playwright 기반 브라우저를 조작하며 테스트 진행
- 관리 UI 제공: Next.js 기반의 프론트엔드에서 테스트 구성 및 실행 모니터링
- 모듈 분리 구조: frontend–cua‑server–sample‑test‑app의 독립적인 구조로 재사용 및 확장 용이
openai‑testing‑agent‑demo 설치 및 사용 방법
설치 및 실행 환경 설정
# GitHub 저장소 복제
git clone https://github.com/openai/openai-testing-agent-demo.git
cd openai-testing-agent-demo
# .env 설정
cp frontend/.env.example frontend/.env.development
cp cua-server/.env.example cua-server/.env.development
cp sample-test-app/.env.example sample-test-app/.env.development
# 샘플 로그인 설정 (기본값)
# sample-test-app/.env.development:
# ADMIN_USERNAME=test_user_name
# ADMIN_PASSWORD=test_password
npm install
npx playwright install
# 코드 실행
npm run dev
실행 후 다음 주소에서 확인할 수 있습니다:
- 프론트엔드 UI: http://localhost:3000
- 샘플 앱: http://localhost:3005
- CUA 서버 (Playwright 제어): ws://localhost:8080
시나리오 설정 및 테스트 실행
- 프론트엔드에서 기본 시나리오 또는 커스텀 시나리오 입력
- CUA 서버는 모델에 자연어 지시를 전송하고,
- Playwright가 브라우저 내에서 해당 지시를 따른 후,
- 결과를 UI에서 실시간 모니터링하거나 로그로 확인
openai-testing-agent-demo 프로젝트 GitHub 저장소
이 글은 GPT 모델로 정리한 글을 바탕으로 한 것으로, 원문의 내용 또는 의도와 다르게 정리된 내용이 있을 수 있습니다. 관심있는 내용이시라면 원문도 함께 참고해주세요! 읽으시면서 어색하거나 잘못된 내용을 발견하시면 덧글로 알려주시기를 부탁드립니다.
파이토치 한국 사용자 모임
이 정리한 이 글이 유용하셨나요? 회원으로 가입하시면 주요 글들을 이메일
로 보내드립니다! (기본은 Weekly지만 Daily로 변경도 가능합니다.)
아래
쪽에 좋아요
를 눌러주시면 새로운 소식들을 정리하고 공유하는데 힘이 됩니다~