Título del Curso: Fundamentos de Testing con NuxtJS utilizando Vitest


Duración: 20 horas (dividido en 5 unidades didácticas)


Objetivos Formativos:


Comprender los fundamentos del testing en el desarrollo de aplicaciones web con NuxtJS.

Aprender a realizar pruebas unitarias, de integración y de aceptación utilizando Vitest.

Adquirir habilidades prácticas para implementar un proceso de pruebas efectivo en proyectos NuxtJS.

Saber integrar las pruebas en procesos de integración continua

Público Destinatario:


Desarrolladores web interesados en aprender sobre pruebas y testing en NuxtJS.

Estudiantes de programación o informática con conocimientos básicos de JavaScript y NuxtJS.

Profesionales que deseen mejorar sus habilidades en el ámbito de testing en el desarrollo de aplicaciones web.

Requisitos para los Alumnos:


Conocimientos básicos de JavaScript y NuxtJS.

Experiencia previa en el desarrollo de aplicaciones web.

Un ordenador con los siguientes requisitos mínimos:

Sistema operativo: Windows, macOS o Linux.

Navegador web actualizado (Chrome, Firefox, etc.).

Node.js instalado (versión 12 o superior).

Editor de texto o entorno de desarrollo integrado (IDE) de preferencia.

Temario:


Módulo 1: Introducción a VITest y Testing de Aplicaciones Nuxt3 (4 horas)


• ¿Qué es VITest y por qué es importante en el desarrollo de aplicaciones Vue?


• Principios básicos del testing de software


• Tipos de pruebas comunes en aplicaciones Nuxt3


• Configuración del entorno de desarrollo para VITest en Nuxt3 (75% del tiempo de este módulo)


 


Módulo 2: Testing de Componentes en Nuxt3 (4 horas)


• Creación de pruebas unitarias para componentes con VITest en Nuxt3


• Testing de lógica de negocio y eventos en los componentes


• Mockeo de componentes


• Uso de mocks y spies para simular dependencias externas


 


Módulo 3: Testing de Componentes con Pinia (4 horas)


• Testing de acciones, mutaciones y getters en Pinia


• Pruebas de componentes que utilizan Pinia para el estado global


• Simulación de acciones asíncronas en las pruebas


 


Módulo 4: Testing a fondo en Nuxt3 (4 horas)


• Testing de composables y módulos


• Testing de pages/views y navegación en aplicaciones Nuxt3


• Simulación de rutas y parámetros en las pruebas


 


Módulo 5: Pruebas de Interfaz de Usuario en Aplicaciones Nuxt3 con Selenium (4 horas)


• Introducción a las pruebas de interfaz de usuario (UI)


• Configuración del entorno de desarrollo para Selenium en Nuxt3


• Pruebas de interacción del usuario con componentes y pages/view en Nuxt3


• Validación de la apariencia y comportamiento de la interfaz de usuario

Duración 40h

Teamrio:

1.- Introducción

- Google API's

- Consola de Acceso

- Api Keys

- Mi primer script

2.- Sheets API

- Introducción

- Spreadsheets

- Sheet

- Cell

3.- SpreadSheets

- Introducción

- Creación

- Modificación

- Borrado

4.- Sheets

- Creación 

- Modificación

- Borrado

5.- Cells

- Lectura 

- Modificación

- Formatos de Fechas

- Fórmulas

- Funciones

- Relaciones entre Celdas

- Vinculación

- Limpieza

- Rangos

6.- Columnas y Filtros

- Creación de un filtro

- Ordenación

- Criterios

7.- Movimiento de datos

- Selección de Datos

- Filtrado de Datos

- Escritura de Datos

8.- Emails

- Definición del Email

- Asunto

- Destinatarios

- Contenido del Email

- Plantillas

- Lectura de Emails

9.- Google Drive

- Lectura de directorios

- Lectura de Ficheros

- Ordenación

- Filtrado


Lit Element
Duración: 
20h
Temario: 
1.- Introducción
* Web Components
* Lit Element 
* Componente
* Plantilla
* Eventos
* Typescript
2.- Entorno de Trabajo
* Node JS
* NPM
* Starter Kits
* IDE's
3.- Mi primer Componente
* Introducción
* Estructura de ficheros
* Propiedades
* Plantilla+ Estilos
4.- Propiedades
* Declaración de propiedades
* Tipos y conversiones
* Uso de Propiedades en Plantilla
5.- Plantillas
* Lit HTML
* Condicionales
* Bucles
* Binding
* Slots
* Composición
* Directivas HTML
6.- Estilos
* Propiedad Styles
* Reutlización
* Shadow Dom
* Variables CSS
7.- Eventos
* EventListeners
* DispatchEvent
* Custom Event
8.- Ciclos de Vida
* WebComponent
* Lit Element
* Render
* FirstUpdated
9.- Composición de Componentes
* Introducción
* Llamada entre componentes
* Mixins
* Controllers
10.- Publicación
* Publicación de un Componente
* Uso de componentes
* RollUp
11.- Pruebas
* Pruebas de Unidad
* Pruebas de Integración
* Pruebas de aceptación

Temario React

1. Introducción
- ¿Qué es React?
- Conceptos básicos
- Componentes
2. Creando una aplicación
- Create React App cli
- Generación del proyecto
- Añadir Typescript
- Lanzamiento de proyecto
- Estructura del proyecto
- Lanzamiento de pruebas
3. Componentes
- Introducción a JSX
- Renderizando elementos
- Componentes y propiedades
- El estado y el ciclo de vida
- Gestionando eventos en React
- Manejo de estado
4. Vistas
- Aplicación de estilos
- Renderizado condicional
- Pintando listas
- Formularios
- Subiendo el estado
5. Rutas y Menús
- Definición de rutas
- Uso de menús
- Navegación entre rutas
- Redirecciones
- Parámetros por url
6. Framework de Vista
- Material UI
- React Bootstrap
7. Redux
- Motivaciones
- Principios básicos de Redux
- Middlewares
- Redux-form
- Redux-thunk
- Redux-observable
8. Extendiendo React
- Renderización en servidor con Next
- Programación nativa con React-Native
- Sitios estáticos con GatsbyJS
9. Conceptos avanzados de React
- Accesibilidad

- Testing
- Internacionalización
- Gestión de errores
- Fragmentos
- Rendimiento
- Portales
- Modales
- Hooks