¿Qué hace javascript-typescript-jest?
Mejores prácticas para escribir pruebas en JavaScript/TypeScript usando Jest, incluyendo estrategias de simulación, estructura de pruebas y patrones comunes.
Estructura de pruebas
- Organizar las pruebas en bloques
describeyitotest. - Usar nombres descriptivos para los bloques de prueba.
- Colocar las pruebas en archivos con el sufijo
.test.jso.spec.js(o.test.ts/.spec.tspara TypeScript).
Estrategias de simulación (mocking)
- Usar
jest.mock()para simular módulos enteros. - Preferir
jest.spyOn()para espiar métodos específicos de objetos. - Limpiar simulaciones entre pruebas con
jest.clearAllMocks()ojest.resetAllMocks()en ganchosbeforeEach.
Patrones comunes
- Fixtures: Crear datos de prueba reutilizables en archivos separados.
- Setup y teardown: Usar
beforeAll,beforeEach,afterAllyafterEachpara preparar y limpiar el entorno. - Pruebas asíncronas: Usar
async/awaitodone()para probar código asíncrono. - Cobertura: Configurar
collectCoverageenjest.config.jsy usar umbrales mínimos.
Configuración recomendada
// jest.config.js
module.exports = {
testEnvironment: 'node',
collectCoverage: true,
coverageThreshold: {
global: {
branches: 80,
functions: 80,
lines: 80,
statements: 80,
},
},
};
Compatibilidad
- Node.js 14 o superior.
- TypeScript 4.x y superior (con ts-jest o @swc/jest).
- Proyectos frontend con React, Vue, Angular u otros frameworks.
Licencia
MIT