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에 설명된 대로)

  1. 리포지토리를 복제하고 Python 3.12 가상 환경을 만듭니다.
  2. requirements.txt에서 Python 종속성을 설치합니다.
  3. .env.example.env로 복사하고 MySQL, Redis, 이메일 및 LLM API 키를 입력합니다.
  4. MySQL 데이터베이스를 생성하고, Django 마이그레이션을 실행하고, 슈퍼 유저를 생성합니다.
  5. (선택 사항) 제공된 관리 명령을 사용하여 기본 제공 로케이터 전략과 Android 컴포넌트 팩을 로드합니다.
  6. 서비스를 시작합니다:
    • python manage.py runserver(HTTP API) 또는 WebSocket 지원을 위한 daphne ….
    • 비동기 작업을 위한 celery -A backend worker -l info.
    • cron 작업을 위한 python manage.py run_all_scheduled_tasks.
  7. 별도의 터미널에서 프론트엔드를 빌드합니다:
    cd frontend
    npm install
    npm run dev   # http://localhost:3000에서 개발 서버 실행
    
  8. 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에서 직접 가져온 것입니다. 추가 기능은 추론되지 않았습니다.

관련

  • 프로젝트
  • 프로젝트
  • 프로젝트
  • 프로젝트
  • 프로젝트