Después de la actualización de Node.js de la versión 14 a la versión 16, tenemos muchas pruebas fallidas en las canalizaciones de CI/CD de bitbucket. Las pruebas locales pasan.
Parece que el problema está en los temporizadores, porque el primer mensaje de error dice: "FakeTimers: se invocó clearTimeout para borrar un temporizador nativo en lugar de uno creado por esta biblioteca. Para limpiar automáticamente los temporizadores nativos, use shouldClearNativeTimers ". Después de eso, un montón de pruebas fallan.
Después de agregar el parámetro "--runInBand" por broma, resuelve el problema, pero no es un enfoque ideal.
Apreciaré cualquier ayuda.
Tuve el mismo problema.
agregando
jest.runOnlyPendingTimers() jest.useRealTimers()al final de mi prueba que tenía useFakeTimers() lo arregló.
referencia: https://testing-library.com/docs/using-fake-timers/