Boilerplate para configurar y realizar testing en Angular 18+ utilizando Standalone Components. Incluye un entorno completo para pruebas unitarias, funcionales y end-to-end, optimizado para usar con Bun.
- Características
- Tecnologías Usadas
- Requisitos
- Instalación
- Estructura del Proyecto
- Pruebas
- Configuración Adicional
- Contribuir
- Licencia
- Angular 18+ Ready: Soporte para Standalone Components, Signals y HttpClient.
- Testing con Jest: Configuración completa para pruebas unitarias y funcionales.
- End-to-End con Playwright: Flujo completo probado en navegadores reales.
- Testing Library: Facilita pruebas funcionales basadas en interacción de usuario.
- Optimización con Bun: Recomendado para instalar dependencias y ejecutar scripts rápidamente.
- Incluye configuración predefinida para
HttpTestingController
.
- Angular 18+: Framework base.
- Jest: Testing framework para pruebas rápidas y fáciles.
- Playwright: Framework para pruebas end-to-end.
- Testing Library: Pruebas funcionales intuitivas.
- HttpClient Testing: Para mockear y controlar solicitudes HTTP.
- Bun: Alternativa moderna a Node.js para mayor velocidad.
- Node.js >= 18 o Bun >= 1.0
- Angular CLI >= 18.0.0
- Playwright CLI
-
Clonar el repositorio:
git clone https://github.com/tu-usuario/angular-testing-boilerplate.git cd angular-testing-boilerplate
-
Instalar dependencias con Bun (recomendado):
bun install
O con npm:
npm install
-
Configurar Playwright (si aún no lo hiciste):
npx playwright install
-
Levantar el servidor de desarrollo:
bun run ng serve
O con npm:
npm run start
e2e/
├── login.e2e.spec.ts # Pruebas end-to-end con Playwright
functional/
├── login.functional.spec.ts # Pruebas funcionales con Playwright
src/
├── app/
│ ├── Login/
│ │ ├── login.component.ts # Componente de Login
│ │ ├── login.component.spec.ts # Pruebas unitarias y funcionales
│ ├── services/
│ ├── auth.service.ts # Servicio de autenticación
│ ├── auth.service.spec.ts # Pruebas unitarias del servicio
├── jest.config.js # Configuración de Jest
├── playwright.config.ts # Configuración de Playwright
├── setup-jest.ts # Configuración inicial de Jest
Pruebas de lógica interna de componentes y servicios utilizando Jest y HttpTestingController.
bun run test
O con npm:
npm run test
Pruebas de interacción en el DOM con Testing Library.
bun run test
O con npm:
npm run test
Pruebas del flujo completo de la aplicación con Playwright.
ng e2e
El proyecto incluye pruebas preconfiguradas en e2e/. Podés agregar más tests siguiendo el patrón en login.e2e.spec.ts.
Para ejecutar scripts más rápido, se recomienda usar bun. Asegurate de tener Bun instalado y configurado como gestor de paquetes.
-
Realizá un fork del repositorio.
-
Crea una rama para tu feature o bugfix:
git checkout -b mi-feature
-
Enviá un pull request con tus cambios.
Este proyecto está bajo la Licencia MIT. Podés usarlo y modificarlo libremente.