Metadata-Version: 2.4
Name: qa-framework-cli
Version: 1.0.0
Summary: Multi-agent QA framework for VS Code Copilot Chat
Requires-Python: >=3.9
Requires-Dist: click>=8.0
Description-Content-Type: text/markdown

# QA Framework

Framework multiagente de testing automatizado para VS Code. Coordina un equipo de 15 agentes especializados y 10 skills para planificar, diseñar, ejecutar y documentar pruebas.

## Estructura del proyecto

```
qa-framework/
├── .github/
│   ├── agents/              # 15 agentes (.agent.md)
│   ├── skills/              # 10 skills ({name}/SKILL.md)
│   └── instructions/        # Instrucciones globales del framework
│
├── .vscode/
│   └── mcp.json             # Servidores MCP (Playwright, Selenium, Postman, Jira)
│
├── qa/
│   ├── context/             # Ambientes, apps, dispositivos, credenciales
│   ├── docs/                # Arquitectura, reglas del sistema, convenciones Jira
│   ├── domain/              # Escenarios y casos de prueba del proyecto
│   ├── knowledge/           # Changelog e historial de ejecuciones
│   ├── templates/           # Plantillas para outputs de agentes
│   ├── integrations/        # Configuración de Jira y Allure
│   └── scripts/             # Scripts de instalación
│
├── .env                     # Variables de entorno (no commitear)
├── README.md
└── VERSION.md
```

## Requisitos previos

| Herramienta            | Versión mínima | Instalado por el script |
|------------------------|----------------|------------------------|
| Windows 10/11          | —              | —                      |
| PowerShell             | 5.1+           | —                      |
| winget (App Installer) | —              | —                      |
| Node.js LTS            | 18+            | ✔                      |
| Python                 | 3.13+          | ✔                      |
| Java JDK               | 17             | ✔                      |
| Android Studio          | —             | ✔                      |
| Google Chrome           | —             | ✔                      |
| VS Code                 | —             | ✔                      |

## Instalación

### Script automatizado

1. Crear la carpeta `qa-framework` en el disco C:
   ```
   C:\qa-framework\
   ```
2. Mover el archivo `setup-qa-framework-v0.5.ps1` dentro de esa carpeta.
3. Abrir PowerShell **como administrador**.
4. Moverse a la carpeta:
   ```powershell
   cd C:\qa-framework
   ```
5. Ejecutar el script:
   ```powershell
   powershell -ExecutionPolicy Bypass -File .\setup-qa-framework-v0.5.ps1
   ```
6. Abrir VS Code y abrir la carpeta `C:\qa-framework`.
7. Loguearse con tu cuenta de GitHub en VS Code (requerido para GitHub Copilot).
8. Hablar con el agente `qa-orchestrator` en el chat de Copilot. Ejemplos de peticiones:
   - *"Quiero testear el módulo X, acá los criterios de aceptación"*
   - *"Ejecutá pruebas para el ticket P50-XXXX"*
   - *"Revisá el módulo X a ver qué encontrás"*
   - *"Medí cuánto tarda la funcionalidad X con N usuarios"*
   - *"¿Qué cobertura tenemos hoy de la funcionalidad X?"*
   - *"Haceme los casos para el módulo X"*

### Configuración post-instalación

> [!CAUTION]
> **Completar `.vscode/mcp.json`** con usuario, token de Jira y API key de Postman. Sin esto no se podrán utilizar los MCPs integrados al framework.

1. **Configurar ambientes** en `qa/context/environments.md`
3. **Configurar apps mobile** en `qa/context/apps.md` y dispositivos en `qa/context/devices.md`
4. **Registrar datos de prueba** estáticos en `qa/context/test-data.md`
5. **Crear escenarios** en `qa/domain/test-scenarios.md` y casos en `qa/domain/test-cases.md`

### Parámetros del script

| Parámetro             | Tipo     | Descripción                                        |
|----------------------|----------|----------------------------------------------------|
| `-RepoRoot`          | `string` | Directorio raíz del repositorio (default: `$PSScriptRoot`) |
| `-Workspace`         | `string` | Directorio destino alternativo para el framework   |
| `-SkipPhase1`        | `switch` | Omitir instalación de herramientas del sistema     |
| `-SkipPhase2`        | `switch` | Omitir instalación de VS Code                      |
| `-SkipPhase3`        | `switch` | Omitir generación de estructura del framework      |
| `-SkipBrowsers`      | `switch` | No instalar Chrome                                 |
| `-SkipAndroidStudio` | `switch` | No instalar Android Studio                         |
| `-SkipProjectDeps`   | `switch` | No ejecutar npm install ni Playwright install      |
| `-Force`             | `switch` | Forzar sobreescritura de archivos existentes       |

**Ejemplos:**

```powershell
# Solo generar estructura del framework (sin instalar herramientas ni VS Code)
powershell -ExecutionPolicy Bypass -File .\setup-qa-framework-v0.5.ps1 -SkipPhase1 -SkipPhase2

# Especificar directorio destino diferente
powershell -ExecutionPolicy Bypass -File .\setup-qa-framework-v0.5.ps1 -Workspace "C:\mi-proyecto"

# Omitir Android Studio y browsers
powershell -ExecutionPolicy Bypass -File .\setup-qa-framework-v0.5.ps1 -SkipBrowsers -SkipAndroidStudio
```

## Fases de instalación

### Fase 1 — Herramientas del sistema

- **Herramientas base**: Node.js LTS, Python 3, Java JDK 17, Android Studio (opcional)
- **Browsers**: Google Chrome (opcional)
- **NPM globals**: `appium`, `newman`, `appium-doctor`
- **Appium drivers**: `uiautomator2`
- **Dependencias**: `npm install` + `npx playwright install chromium`

### Fase 2 — Visual Studio Code

- Instala VS Code vía winget (o detecta si ya está instalado)
- Las extensiones `GitHub.copilot` y `GitHub.copilot-chat` vienen incluidas por defecto en el instalador de VS Code

### Fase 3 — Framework QA

- **15 agentes** copiados a `.github/agents/`
- **10 skills** copiados a `.github/skills/{name}/SKILL.md`
- **Instructions** copiados a `.github/instructions/`
- **Estructura** de carpetas `qa/` con templates y documentación
- **`.env`** con variables de entorno requeridas
- **`.vscode/mcp.json`** con configuración de servidores MCP
- **`VERSION.md`** con manifiesto de versión

## Inventario de agentes

| Agente               | Rol                                                    | Nivel |
|----------------------|-------------------------------------------------------|-------|
| `qa-orchestrator`    | Punto de entrada. Routea por `tipo_tarea`             | N0    |
| `qa-analyst`         | Único que habla con el usuario. Clasifica y prepara   | N1    |
| `qa-context-fetcher` | Recopila contexto de Jira/SharePoint/local            | N2    |
| `qa-feature`         | Genera escenarios y casos de prueba                   | N1    |
| `qa-regression`      | Ejecuta suites existentes, genera faltantes           | N1    |
| `qa-exploratory`     | Testing heurístico con 25 heurísticas                 | N1    |
| `qa-performance`     | Pruebas de carga (k6, artillery)                      | N1    |
| `qa-data-generator`  | Genera datos de prueba por canal                      | N1    |
| `qa-data-provider`   | Resuelve datos dinámicos en runtime                   | N2    |
| `qa-visual`          | Consistencia visual y look & feel                     | N1    |
| `qa-mobile`          | Ejecutor canal mobile (Appium + UiAutomator2)         | N2    |
| `qa-web`             | Ejecutor canal web (Playwright MCP)                   | N2    |
| `qa-api`             | Ejecutor canal API (HTTP/Newman)                      | N2    |
| `qa-reporter`        | Dashboard HTML + tickets Jira. Cierra todo run        | N1    |
| `jira-atlassian`     | Operaciones directas en Jira vía MCP                  | N1    |

## Inventario de skills

| Skill                  | Categoría    | Agente principal     |
|------------------------|-------------|---------------------|
| `context-analysis`     | analysis    | `qa-analyst`         |
| `standards`            | standards   | `qa-feature`         |
| `test-design`          | design      | `qa-feature`         |
| `data-analysis`        | analysis    | `qa-feature`         |
| `mobile-automation`    | automation  | `qa-mobile`          |
| `web-automation`       | automation  | `qa-web`             |
| `api-testing`          | testing     | `qa-api`             |
| `observability`        | performance | `qa-performance`     |
| `exploratory-testing`  | testing     | `qa-exploratory`     |
| `visual-consistency`   | visual      | `qa-visual`          |

## Versionado

| Componente | Versión actual |
|-----------|---------------|
| Script    | v0.5          |
| Framework | v3            |
| Agents    | v3            |

Ver [VERSION.md](VERSION.md) para el manifiesto completo.
