chenjigang4167/testhub_platform

TestHub一站式AI智能测试平台 · By 大刚(公众号:测试开发实战)

TestHub – AI 기반 풀스택 테스트 관리 플랫폼

그것은 무엇인가 – TestHub는 QA 팀이 전체 테스트 수명 주기를 관리할 수 있도록 도와주는 웹 애플리케이션입니다. 테스트 관리 도구의 일반적인 테스트 케이스, 테스트 스위트 및 결함 추적 기능과 자동화 엔진(Selenium, Playwright, Airtest, Locust) 세트를 결합하며, 더 중요한 것은 요구 사항 문서에서 테스트 케이스를 생성하고 브라우저를 자동으로 구동하며 Dify 챗봇을 통해 테스트 관련 질문에 답변할 수 있는 AI 기반 도우미를 제공합니다.

주요 기능

영역 TestHub가 제공하는 것
AI 지원 요구 사항 분석 PDF/Word/TXT 사양을 업로드하면 통합 LLM(DeepSeek, OpenAI, Anthropic, Gemini 등)이 비즈니스 요구 사항을 추출하고 초기 테스트 케이스를 생성합니다.
테스트 케이스 작성 및 검토 전체 CRUD, 버전 관리, 태그 지정, 템플릿 및 체크리스트가 포함된 다단계 검토 워크플로.
API 테스트 HTTP 및 WebSocket 지원, 계층적 테스트 스위트 구성, 변수 대체, 어서션, 예약 실행, Allure 보고서, 이메일/Webhook 알림.
Web UI 자동화 Selenium 및 Playwright 엔진, 멀티 브라우저(Chrome/Firefox/Edge), 비주얼 스크립트 편집기, POM 지원, LLM이 페이지 구조를 이해하고 단계를 생성하는 AI "브라우저 사용" 모드(텍스트 또는 비전 기반).
모바일(Android) 자동화 Airtest 이미지 인식, 로컬 에뮬레이터 또는 원격 장치 처리, 리소스 잠금, 컴포넌트 라이브러리, Celery 기반 비동기 실행 및 실시간 WebSocket 진행 상황.
성능 테스트 Locust 기반 부하 테스트 작업과 메트릭 대시보드 및 보고서.
데이터 팩토리 50개 이상의 유틸리티(랜덤 데이터, 인코딩, 암호화, JSON 헬퍼, cron 표현식 파서 등)를 API 또는 UI 테스트에서 직접 참조할 수 있습니다.
협업 및 보안 리프레시/블랙리스트가 있는 JWT 이중 토큰 인증, 역할 기반 프로젝트 권한, 이메일 및 엔터프라이즈 메신저(WeChat, DingTalk, Feishu) Webhook.
확장 가능한 AI 통합 많은 LLM 공급자를 플러그인 스타일로 지원합니다. 역할(케이스 작성, 검토, 브라우저 사용)별 모델 선택.

아키텍처

  • 백엔드: Django 4.2 + DRF, MySQL, Redis(Celery/WebSocket용 선택 사항), JWT 인증, 비동기 및 예약 작업용 Celery + APScheduler, WebSocket용 Channels/Daphne, 보고용 Allure, AI 호출용 LangChain-OpenAI 및 browser-use.
  • 프론트엔드: Vue 3 + Vite, Element Plus UI 라이브러리, Pinia 스토어, Vue-Router, Axios, 스크립트 편집용 Monaco 에디터, 시각적 대시보드용 ECharts, 다국어 UI용 vue-i18n.
  • 자동화 엔진: Selenium, Playwright, Airtest(OCR 포함), Locust.
  • 배포 옵션: runserver/daphne를 사용한 로컬 개발, Docker Compose(DB, Redis, Celery workers 포함), Allure 보고서 생성을 위한 선택적 Java 런타임.

일반적인 워크플로

  1. 요구 사항 가져오기 → AI가 기능 포인트를 추출 → 자동 생성된 테스트 케이스가 요구 사항 분석 모듈에 나타납니다.
  2. 검토 및 개선 → 팀원은 내장 검토 프로세스를 사용하여 케이스를 승인하거나 편집합니다.
  3. 테스트 스위트 구축 → API, UI 또는 모바일 테스트를 결합합니다. 데이터 팩토리에서 데이터를 첨부합니다.
  4. 실행 → 동기(개발) 또는 Celery를 통해 비동기로 실행합니다. WebSocket UI로 진행 상황을 모니터링합니다. 결과는 Allure 및 ECharts로 저장 및 시각화됩니다.
  5. 보고 및 결함 추적 → 자동 연결된 결함 항목, 이메일/엔터프라이즈 메신저로 알림.

시작하기(README에 설명된 대로)

  • Python 3.12, Node 18+, MySQL 8, 선택적 Redis 및 Java 17을 설치합니다.
  • 저장소를 클론 → virtualenv 생성 → pip install -r requirements.txt.
  • .env.example을 .env로 복사하고 DB/Redis/AI-API 키를 입력합니다.
  • MySQL 데이터베이스 testhub를 생성하고 Django 마이그레이션 + createsuperuser를 실행합니다.
  • (선택 사항) UI 로케이터 전략 및 Android 컴포넌트 팩을 로드하는 도우미 명령을 실행합니다.
  • 백엔드(python manage.py runserver 또는 WS용 Daphne) 및 프론트엔드(npm install && npm run dev)를 시작합니다.
  • UI는 http://localhost:3000, API 문서는 http://localhost:8000/api/docs/에서 액세스합니다.
  • Docker 대안: ./build-and-push.sh 실행 후 docker-compose up -d.

누가 사용할까요

  • 수동 케이스 관리, 자동화된 API/UI/모바일 테스트 및 AI 지원 테스트 생성을 위한 단일 포털을 원하는 QA 팀.
  • 자체 추론 스택을 구축하지 않고 여러 LLM 공급자를 통합하려는 조직.
  • 자체 호스팅 솔루션에서 예약 테스트 실행, 성능 테스트 및 풍부한 보고(Allure, ECharts)가 필요한 회사.

라이선스 – GPL 3.0(오픈 소스이지만 파생물도 GPL 라이선스여야 함).


위의 모든 세부 사항은 저장소의 README에서 직접 가져온 것이며 추가 기능은 추론되지 않았습니다.

관련

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