- Add docs/USING_VIBE_AGENTS.md with complete usage instructions - Include agent descriptions, invocation methods, and use cases - Add examples of conversations with each agent - Add best practices and troubleshooting tips Generated by Mistral Vibe. Co-Authored-By: Mistral Vibe <vibe@mistral.ai>
🧪 API Test Playground
Monorepo pro testování různých API služeb pomocí Bruno a Vibe agentů.
Tento projekt slouží jako playground pro vývoj, testování a výuku API testování. Obsahuje backendové služby, frontendové aplikace a komplexní testovací kolekce.
🗺️ Rozcestník
| Služba | Backend | Frontend | Testy | Dokumentace |
|---|---|---|---|---|
| PotterAPI | backends/potter-api |
backends/potter-api/frontend |
apiTest/PotterAPI |
bruno_test_scenario.md |
| JsonPlaceholder | ❌ Veřejné API | ❌ | apiTest/JsonPlaceholder |
- |
🚀 Rychlý start
1️⃣ Inicializace projektu
# Klonování repozitáře
git clone <repo-url>
cd api_test
# Instalace všech závislostí (využívá npm workspaces)
npm run setup
2️⃣ Spuštění backendů
# Spuštění všech backendů
npm run start:backends
# Nebo jednotlivě
npm run start:potter-api
Backend PotterAPI bude dostupný na http://localhost:3000.
3️⃣ Spuštění frontendů
# Spuštění PotterAPI frontend (Vue.js)
npm run start:potter-fe
Frontend bude dostupný na http://localhost:8080.
4️⃣ Spuštění testů
# Spuštění všech testů (vyžaduje běžící backend pro PotterAPI)
npm run test:all
# Spuštění všech testů + spuštění backendu (automaticky)
npm run test:all:with-backend
# Spuštění pouze PotterAPI testů
npm run test:potter
# Spuštění testů s watch módem (automatické opakování)
npm run test:watch
⚠️ Poznámka: Testy pro PotterAPI vyžadují běžící backend na
localhost:3000. Testy pro JsonPlaceholder fungují bez backendu (používají veřejné API). Použijnpm run test:all:with-backendpro automatické spuštění backendu i testů.
📁 Struktura monorepa
api_test/
├── README.md # Tento soubor (rozcestník)
│
├── package.json # Root package.json (npm workspaces)
│
├── backends/ # Backendové služby
│ └── potter-api/ # PotterAPI
│ ├── app.js # Hlavní Express.js aplikace
│ ├── routes/ # API routy
│ ├── controllers/ # Kontrolery
│ ├── frontend/ # Frontend (Vue.js)
│ │ ├── public/ # Statické soubory
│ │ ├── src/ # Zdrojové kódy
│ │ └── package.json # Frontend závislosti
│ ├── bruno_test_scenario.md # Dokumentace pro Bruno
│ └── README.md # Dokumentace PotterAPI
│
├── apiTest/ # Testovací kolekce (Bruno)
│ └── PotterAPI/ # Testy pro PotterAPI
│ ├── GET/ # GET požadavky
│ ├── POST/ # POST požadavky
│ └── AI/ # AI-specifické testy
│
├── .github/ # GitHub konfigurace
│ └── workflows/ # CI/CD pipeline
│ └── api-tests.yml # Automativké testování
│
└── .vibe/ # Vibe agenti (budoucí)
└── agents/ # AI asistenti
🔧 Nástroje
Bruno
Moderní alternativa k Postmanu – Open-source nástroj pro testování API.
- GUI: Otevřete
apiTest/v Bruno aplikaci - CLI: Použijte
npx @usebruno/cli run <cesta> -r - Dokumentace: usebruno.com
Vibe CLI
AI asistent pro vývoj – Pomáhá s psaním testů, dokumentací a delegací úkolů.
🤖 Vibe Agenti (plánováno)
| Agent | Účel | Vyvolání |
|---|---|---|
| API Test Assistant | Pomoc s psaním a spouštěním API testů | /api-tester |
| Bruno Expert | Specialista na Bruno CLI a testovací scénáře | /bruno-expert |
| Learning Guide | Výuka API testování pro nováčky | /learning-guide |
📝 Pridávání nové API služby
Chcete přidat novou API službu? Postupujte takto:
1. Vytvořte backend
mkdir -p backends/<nova-sluzba>
cd backends/<nova-sluzba>
npm init -y
# Přidejte svůj backend kód
2. Vytvořte testy
mkdir -p apiTest/<nova-sluzba>
# Přidejte Bruno testovací kolekce (.yml soubory)
3. Aktualizujte dokumentaci
- Přidejte řádek do tabulky v tomto README
- Vytvořte
backends/<nova-sluzba>/README.md - Případně vytvořte
backends/<nova-sluzba>/bruno_test_scenario.md
4. Testujte
npm run test:all # Spustí všechny testy včetně nových
🔄 CI/CD Pipeline
Automatické testování při každém pushu na main nebo master větvi:
- ✅ Spuštění backendu
- ✅ Čekání na inicializaci serveru
- ✅ Spuštění všech Bruno testů
- ✅ Reportování výsledků
Soubor: .github/workflows/api-tests.yml
📄 Dokumentace
- PotterAPI – Testovací scénáře – Detailní průvodce testováním PotterAPI
- Průvodce vytvářením kolekcí – Jak přidat novou testovací kolekci
- Architektura monorepa – Další dokumentace
🤝 Přispívání
Chcete přispět do tohoto monorepa? Dodržujte následující postup:
📌 Zásady
- ❌ Zakázáno: Přímý push do
mainnebomastervětve - ✅ Povoleno: Vytváření nových větví a Pull Requestů
🚀 Postup
- Forkněte repozitář
- Vytvořte novou větev pro svou změnu:
git checkout -b feature/nova-funkce # nebo git checkout -b fix/oprava-chyby - Proveďte své změny a commitněte je:
git commit -m 'Přidána nová funkce' - Pushněte změny na svou větev:
git push origin feature/nova-funkce - Vytvořte Pull Request z vaší větve do
main - Počkejte na review a schválení
📝 Pokyny pro Pull Request
- Napište jasný název a popis změny
- Odkazujte na příslušné issues (pokud existují)
- Udržujte commit zprávy čisté a popisné
📞 Podpora
- Issues: GitHub Issues
- Diskuse: Použijte GitHub Discussions
🏆 Technologie
| Technologie | Účel |
|---|---|
| Node.js | Backend runtime |
| Express.js | Web framework pro PotterAPI |
| Vue.js | Frontend framework |
| Bruno | API testování |
| npm Workspaces | Správa monorepa |
| GitHub Actions | CI/CD |