Saltar al contenido principal
Versión: 30.0

De v28 a v29

Traducción Beta No Oficial

Esta página fue traducida por PageTurner AI (beta). No está respaldada oficialmente por el proyecto. ¿Encontraste un error? Reportar problema →

¿Actualizando Jest de v28 a v29? Esta guía te ayudará a refactorizar tu configuración y pruebas.

información

Consulta el registro de cambios para ver la lista completa de modificaciones.

nota

¿Actualizas desde una versión anterior? Puedes ver la guía de actualización de v27 a v28 aquí.

Compatibilidad

Las versiones soportadas de Node son 14.15, 16.10, 18.0 y superiores.

Formato de instantáneas

Como se anunció en la publicación de Jest 28, Jest 29 ha cambiado el formato predeterminado de instantáneas a {escapeString: false, printBasicPrototype: false}.

Si deseas mantener el comportamiento anterior, puedes configurar la propiedad snapshotFormat con:

+ snapshotFormat: {
+ escapeString: true,
+ printBasicPrototype: true
+ }

Actualización de JSDOM

jest-environment-jsdom ha actualizado jsdom de v19 a v20.

información

Si usas jest-environment-jsdom, la versión mínima de TypeScript se establece en 4.5.

Destacadamente, jsdom@20 incluye soporte para crypto.getRandomValues(), lo que significa que paquetes como uuid y nanoid, que no funcionaban correctamente en Jest@28, ahora pueden trabajar sin polyfills adicionales.

pretty-format

El plugin ConvertAnsi se ha eliminado del paquete pretty-format en favor de jest-serializer-ansi-escapes.

jest-mock

Las exportaciones de tipos de utilidad Mocked* del paquete jest-mock han cambiado. MaybeMockedDeep y MaybeMocked ahora se exportan como Mocked y MockedShallow respectivamente; solo se exponen las variantes de mock profundo para MockedClass, MockedFunction y MockedObject.

TypeScript

Traducción Beta No Oficial

Esta página fue traducida por PageTurner AI (beta). No está respaldada oficialmente por el proyecto. ¿Encontraste un error? Reportar problema →

información

Los ejemplos de TypeScript en esta página solo funcionarán como se documenta si importas explícitamente las APIs de Jest:

import {expect, jest, test} from '@jest/globals';

Consulta la guía de Primeros pasos para obtener detalles sobre cómo configurar Jest con TypeScript.

jest.mocked()

El método auxiliar jest.mocked() ahora envuelve los tipos de miembros profundos del objeto pasado por defecto. Si has usado este método con true como segundo argumento, elimínalo para evitar errores de tipo:

- const mockedObject = jest.mocked(someObject, true);
+ const mockedObject = jest.mocked(someObject);

Para mantener el comportamiento anterior de mock superficial, pasa {shallow: true} como segundo argumento:

- const mockedObject = jest.mocked(someObject);
+ const mockedObject = jest.mocked(someObject, {shallow: true});