chenjigang4167/testhub_platform
TestHub一站式AI智能测试平台 · By 大刚(公众号:测试开发实战)
TestHub – AI 기반의 풀스택 테스트 관리 플랫폼
소개 – TestHub는 QA 팀이 테스트를 계획, 작성, 실행 및 보고할 수 있도록 돕는 오픈소스 웹 애플리케이션입니다. 기존 테스트 관리 스택 위에 AI 기반 도우미(요구사항-테스트 케이스 생성, 통합 챗봇, 언어 모델이 브라우저를 구동하도록 하는 Browser-use 모드)를 추가합니다.
주요 기능
| 영역 | TestHub 제공 기능 |
|---|---|
| AI 지원 | • 요구사항 문서(PDF/Word/TXT)를 업로드하고 지원되는 LLM(DeepSeek, OpenAI, Anthropic, Gemini 등)이 비즈니스 요구사항을 자동으로 추출하여 테스트 케이스를 생성하도록 합니다. • 필요에 따른 테스트 조언을 위한 Dify 기반 챗봇. • Browser-use 모드: LLM이 페이지 구조(텍스트 또는 시각적)를 해석하고 UI를 자동으로 조작하기 위한 Selenium/Playwright 스크립트를 생성합니다. |
| 테스트 케이스 수명 주기 | 프로젝트/버전별로 케이스 생성, 편집, 버전 관리, 보관, 태그 지정 및 구성. 템플릿, 체크리스트 및 상태 추적을 통한 다중 인력 검토를 지원합니다. |
| API 테스트 | HTTP 및 WebSocket 지원, 계층적 요청 컬렉션, 변수 치환, 어설션, 예약 실행, 이메일/Webhook 알림, Allure 스타일 보고서. |
| Web UI 자동화 | Selenium 및 Playwright 백엔드, 멀티 브라우저(Chrome/Firefox/Edge), 요소 라이브러리, Page-Object Model, 시각적 스크립트 편집기, 비디오/스크린샷, cron 기반 예약 및 AI 기반 '스마트 모드'. |
| 모바일(Android) 자동화 | Airtest 이미지 인식 엔진, 로컬 에뮬레이터 또는 원격 기기 처리, 리소스 잠금, 컴포넌트 라이브러리, UI-Flow 오케스트레이션, Celery 기반 비동기 실행 및 실시간 WebSocket 진행률. |
| 성능 테스트 | 결과 집계 및 보고 기능을 갖춘 Locust 기반 부하 테스트 작업. |
| 데이터 팩토리 | API 또는 UI 테스트에서 참조할 수 있는 >50개의 유틸리티(무작위 데이터, 인코딩, 암호화, JSON 헬퍼, cron 표현식 파서 등). |
| 보안 및 협업 | 자동 새로 고침이 포함된 JWT 이중 토큰, 로그아웃 시 블랙리스트, 역할 기반 권한, 다중 프로젝트 격리, 통합 알림(이메일, Enterprise-WeChat, DingTalk, Feishu). |
아키텍처
- 백엔드: Django 4.2 + DRF, MySQL, Redis(Celery/WebSocket의 경우 선택 사항), JWT 인증, 비동기 작업을 위한 Celery + APScheduler, WebSocket을 위한 Channels/Daphne, 보고를 위한 Allure, LLM 통합을 위한 LangChain-OpenAI 및
browser-use. - 프론트엔드: Vue 3 + Vite, Element Plus UI 라이브러리, Pinia 스토어, Vue-Router, Axios, ECharts, Monaco 편집기, i18n 지원.
시작하기(README에 설명된 대로)
- 리포지토리를 복제하고 Python 3.12 가상 환경을 만듭니다.
requirements.txt에서 Python 종속성을 설치합니다..env.example을.env로 복사하고 MySQL, Redis, 이메일 및 LLM API 키를 입력합니다.- MySQL 데이터베이스를 생성하고, Django 마이그레이션을 실행하고, 슈퍼 유저를 생성합니다.
- (선택 사항) 제공된 관리 명령을 사용하여 기본 제공 로케이터 전략과 Android 컴포넌트 팩을 로드합니다.
- 서비스를 시작합니다:
python manage.py runserver(HTTP API) 또는 WebSocket 지원을 위한daphne ….- 비동기 작업을 위한
celery -A backend worker -l info. - cron 작업을 위한
python manage.py run_all_scheduled_tasks.
- 별도의 터미널에서 프론트엔드를 빌드합니다:
cd frontend npm install npm run dev # http://localhost:3000에서 개발 서버 실행 - UI(
http://localhost:3000), API 문서(/api/docs/), Django 관리자(/admin/)에 액세스합니다.
Docker 사용자는 ./build-and-push.sh를 실행한 다음 docker-compose up -d를 실행하여 원클릭으로 전체 스택을 구동할 수 있습니다.
대상 사용자
- 요구사항 분석, 테스트 케이스 작성, 검토 및 실행을 위한 단일 포털을 원하는 QA 팀.
- LLM 생성 케이스 또는 AI 기반 UI 자동화를 통해 수동 테스트를 보강하려는 조직.
- 사용자 정의 테스트 유형 통합을 연결하기 위한 확장 가능한 플랫폼(Django 앱, Vue 컴포넌트)이 필요한 개발자.
라이선스 – GPL 3.0(LICENSE 참조).
위의 모든 정보는 리포지토리의 README에서 직접 가져온 것입니다. 추가 기능은 추론되지 않았습니다.
관련
- 프로젝트
- 프로젝트
- 프로젝트
- 프로젝트
- 프로젝트