Chisle
코딩 에이전트 플러그인, 20개 실시간 작업에서 기본 모델 52% 활용, 간결한 페르소나와 출력 압축 제공
Tesbo는 AI 기반 테스트 관리와 직관적 케이스 도구를 결합해 QA팀이 테스트를 빠르게 계획·실행·자동화·추적하도록 돕는다
Tesbo combines AI-powered test management software with an intuitive test case management tool to help QA teams plan, execute, automate, & track software testing faster.
개발 도구TypeScript · JavaScriptGitHub @QAbleHQ온라인운영자 미확인
써 보셨어요? 한 번만 눌러 주세요. 로그인은 필요 없어요.
Tesbo Test Manager is an open-source test case management system built for QA teams who want to self-host, manage test cases, organize test cycles, and eventually bring AI into their QA workflow without vendor lock-in.
README 전체를 불러오는 중입니다.
README 전문 보기 ↗Tesbo Test Manager is developed by QAble Testlab.
Open-source test case management for QA teams: self-host, organize cases and suites, run test cycles, track results, and optionally connect email, storage, and integrations.
Public repository: https://github.com/QAbleHQ/Tesbo-Test-Manager
Apache License 2.0. See LICENSE.
| Layer | Technology |
|---|---|
| Frontend | Next.js (App Router) + TypeScript + Tailwind |
| Backend | NestJS + TypeScript |
| Database | PostgreSQL with pgvector (vector extension) |
| Cache | Redis |
| Email (optional) | Postmark |
You always need:
.env fileDatabase — pick ONE path:
| Path | When to use | What you set |
|---|---|---|
| A — Database URL | You already have Postgres (Neon, RDS, Cloud SQL, company DB, …) | Put the connection string in DATABASE_URL |
| B — Docker Postgres | You want everything local; no hosted DB | Run a pgvector Postgres container, then point DATABASE_URL at it |
Both paths are valid. The app only cares that DATABASE_URL works and the DB has the vector extension.
Compose does not ship a Postgres service today. You supply the DB via Path A or Path B, then start the app.
docker compose or docker-compose)Check:
git --version
docker --version
docker compose version || docker-compose version
git clone https://github.com/QAbleHQ/Tesbo-Test-Manager.git
cd Tesbo-Test-Manager
git checkout main
.envcp docker.env.example .env
Edit .env. Start with these keys (safe local defaults):
FRONTEND_PORT=1010
BACKEND_PORT=1011
REDIS_PORT=6379
FRONTEND_URL=http://localhost:1010
NEXT_PUBLIC_API_URL=http://localhost:1011
CORS_ALLOWED_ORIGINS=http://localhost:1010,http://127.0.0.1:1010
REDIS_URL=redis://redis:6379
STORAGE_DRIVER=local
You will set DATABASE_URL / DATABASE_USER / DATABASE_PASSWORD in Step 4 (Path A or B).
Do not commit .env. Secrets stay on your machine. The full list of optional variables is in docker.env.example.
Example: browser uses http://192.168.1.50:1010 or a public IP.
Then set all three to that same host (not only localhost):
FRONTEND_URL=http://YOUR_HOST:1010
NEXT_PUBLIC_API_URL=http://YOUR_HOST:1011
CORS_ALLOWED_ORIGINS=http://YOUR_HOST:1010
Then rebuild the frontend (see Step 5).
If you skip this, login shows Failed to fetch.
CREATE EXTENSION IF NOT EXISTS vector;
.env:DATABASE_URL=postgresql://USER:PASSWORD@HOST:PORT/DBNAME?sslmode=require
DATABASE_USER=USER
DATABASE_PASSWORD=PASSWORD
Examples:
DATABASE_URL=postgresql://postgres:[email protected]:5432/tesbohost.docker.internal)Tip: If the DB is on the internet (Neon), the Docker backend can reach it directly. No extra Docker network steps.
Use the official pgvector image (plain postgres image will fail migrations).
B1. Start Postgres
docker network create tesbo-net 2>/dev/null || true
docker rm -f tesbo-db 2>/dev/null || true
docker run -d --name tesbo-db \
--network tesbo-net \
-e POSTGRES_DB=tesbo \
-e POSTGRES_USER=postgres \
-e POSTGRES_PASSWORD=postgres \
-p 5432:5432 \
pgvector/pgvector:pg16
Wait until healthy:
docker exec tesbo-db pg_isready -U postgres
docker exec tesbo-db psql -U postgres -d tesbo -c "CREATE EXTENSION IF NOT EXISTS vector;"
B2. Put this in .env
DATABASE_URL=postgresql://postgres:postgres@tesbo-db:5432/tesbo
DATABASE_USER=postgres
DATABASE_PASSWORD=postgres
Here tesbo-db is the container name (DNS name on the Docker network).
Do not use localhost inside DATABASE_URL for this setup — inside Compose, localhost means the app container itself, not your laptop.
B3. Put Postgres on the same Docker network as the app (important)
Docker Compose creates a project network (often named tesbo-test-manager_default).
The database container must be on that network so the hostname tesbo-db works.
Do this after Step 5 starts Compose the first time (or if migrator fails with connection errors):
# See the exact network name
docker network ls | grep tesbo
# Attach the DB container to the Compose network (use the name you saw above)
docker network connect tesbo-test-manager_default tesbo-db
# Recreate migrator + backend so they connect cleanly
docker compose up -d --force-recreate migrator backend
If the network name is different (for example tesbotestmanager_default), use that name instead.
Then continue with the health checks in Step 5.
From the repo root:
docker compose up --build -d
# or:
docker-compose up --build -d
Helpers:
sh ./scripts/docker-up.sh # macOS / Linux
.\scripts\docker-up.ps1 # Windows PowerShell
First build can take several minutes.
docker compose ps
curl -sS http://localhost:1011/health
# → {"status":"ok"}
curl -sS -o /dev/null -w "%{http_code}\n" http://localhost:1010/login
# → 200
Open: http://localhost:1010
Useful:
여기까지가 README 앞부분입니다. 나머지는 원문에서 읽을 수 있습니다. README 전문 보기 ↗