Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

277
Vistas
En Jest, ¿cómo probar una función declarada dentro de una función?

Estoy tratando de probar una función que se declara dentro de otra función (Padre). Intenté algunas cosas pero no pude probar eso. Estoy usando la biblioteca de reacción y el marco de prueba JEST en el proyecto.

Aquí está la función del archivo de servicio (service.ts) que estoy tratando de probar:

 import { useThisHook } from './base-hooks'; export function someFunction(param: string) { const [ resolveFunction, , { loading, error }, ] = useThisHook(); const childFun = (param : number) => { resolveFunction(someArguments); } return{ someValue: childFun } }

Aquí está el código del archivo de especificaciones:

 import * as SomeHooks from './base-hooks'; import * as Service from './service'; describe('Service function', () => { beforeEach(() => { jest.spyOn(SomeHooks, 'useThisHook').mockReturnValue( { //Some Value } ); }); test('Some function test', () => { const someFunctionResponse = Service.someFunction('string'); expect(someFunctionResponse).toEqual({ someValue: expect.any(Function), }); }); });

Hasta aquí está bien. También se están pasando las pruebas, pero el problema es que childFn no está recibiendo la cobertura y ese es mi requisito. Soy nuevo en React y Jest. No soy capaz de entender cómo puedo lograr eso. Intenté muchas cosas pero no tuve éxito.

about 4 years ago · Santiago Trujillo
1 Respuestas
Responde la pregunta

0

Su childFn no está siendo llamado, por eso no está recibiendo cobertura.

Puede refactorizar todo el childFn a un nuevo gancho y probarlo individualmente con algo como react-hooks-testing-library .

O puede separar el childFn y declararlo fuera del alcance de someFunction , pasar la resolveFunction y luego probarlo.

Solo obtiene cobertura si el código se llama realmente, no cuando se declara.

about 4 years ago · Santiago Trujillo Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda