자연어 기반 웹 및 모바일 E2E 테스트 프레임워크
tester-army/e2e
GitHube2e는 웹 및 모바일 앱을 위한 엔드투엔드 테스트 프레임워크로, 사용자가 자연어로 목표를 제시하면 에이전트가 앱을 구동하여 목표 달성 여부를 자동으로 검증합니다.
복잡한 코딩 대신 자연어 설명만으로 웹 및 모바일 앱의 기능 검증이 가능해져 개발 생산성을 높이고 QA 프로세스를 혁신할 잠재력을 가져요.
- 에이전트의 모든 행동은 기록되어 재현되며, 앱 변화가 없을 경우 모델 호출 없이 테스트를 재실행할 수 있어 높은 효율성과 안정성을 제공합니다.
- 개발자는 복잡한 코딩 대신 자연어 설명만으로 기능 검증을 할 수 있게 되어 개발 생산성을 높이고 QA 프로세스를 혁신할 잠재력을 가집니다.
- 현재 e2e는 활발히 개발 중인 상태이며 1.0 버전이 아니므로, API나 설정 구성 등이 마이너 업데이트 간에 변경될 수 있다는 점을 참고해야 합니다.
e2e는 웹 및 모바일 애플리케이션을 위한 엔드투엔드(E2E) 테스트 프레임워크입니다. 사용자가 자연어로 목표를 설명하면, 가 해당 앱을 구동하여 목표 달성 여부를 자동으로 검증합니다. 이 과정에서 로케이터와 단언(assertions)을 사용하여 결과를 확인하게 됩니다.
에이전트의 행동 단계는 기록되며, 다음 실행 시에는 모델 호출 없이 재현됩니다. 따라서 애플리케이션 변경 사항이 없을 경우 높은 효율성과 안정성을 유지할 수 있습니다. 테스트를 수행하는 데 필요한 구독, 키 또는 로컬 모델을 직접 준비해야 합니다.
사용자는 `npx e2e init` 명령어를 통해 초기 설정을 시작할 수 있으며, 이 과정에서 엔진(웹 또는 모바일)과 모델 제공자를 지정하여 설정 파일 및 예제 테스트를 생성합니다. 주요 패키지로는 /러너 역할을 하는 `e2e`, 브라우저 엔진인 `@e2e-dev/web` (Playwright 기반), 그리고 iOS 및 Android 시뮬레이터/에뮬레이터를 지원하는 `@e2e-dev/mobile` 등이 있습니다.
현재 e2e는 1.0 버전을 목표로 활발히 개발 중인 상태이므로, API나 설정 구성 등은 마이너 릴리스 간에 변경될 수 있다는 점을 유의해야 합니다.
용어 풀이
- 에이전트
- 목표를 받으면 스스로 계획을 세우고 도구를 써서 여러 단계의 작업을 해내는 AI.
- API
- 프로그램끼리 기능을 주고받는 약속된 창구. AI 모델은 보통 API로 불러 써요.
- SDK
- 특정 서비스나 기기를 쉽게 쓰도록 묶어 둔 개발 도구 모음.
자연어 목표를 제시하면 어떻게 테스트가 진행되나요?
사용자가 자연어로 목표를 설명하면, 에이전트가 해당 앱을 구동하여 목표 달성 여부를 자동으로 검증해요. 이 과정에서 로케이터와 단언(assertions)을 사용하여 결과를 확인하게 돼요.
에이전트의 행동 기록은 어떤 장점이 있나요?
에이전트의 행동 단계가 기록되면, 다음 실행 시에는 모델 호출 없이 재현할 수 있어요. 따라서 애플리케이션 변경 사항이 없을 경우 높은 효율성과 안정성을 유지할 수 있어요.
프레임워크를 사용하려면 어떤 단계를 거쳐야 하나요?
`npx e2e init` 명령어를 통해 초기 설정을 시작할 수 있어요. 이 과정에서 엔진과 모델 제공자를 지정하여 설정 파일 및 예제 테스트가 생성돼요.