Si estoy probando una función que hace una llamada de búsqueda, y todas las llamadas de búsqueda que tengo en el proyecto solo están destinadas a ejecutarse en el navegador. ¿Todavía necesito tener algún paquete instalado en el nodo e importarlo para poder simular esa llamada de búsqueda?
Un escenario simple como este arroja ReferenceError: fetch is not defined en la prueba Jest:
// fetcKey.js export async function fetchKey() { try { const key = await fetch('http://localhost:3000/key'); return (await key.text()); } catch(error){ throw error; } } //fetchKey.test.js import fetchKey from './fetchKey' test('Checks fetchKey return', () => { expect(fetchKey()).not.toThrow(); })Debería poder usar node-fetch :
import fetch from 'node-fetch'; (Tenga en cuenta que es un módulo ECMAScript y no se puede importar con require , como se menciona en su documentación).