Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

450
Views
reactjs jest jQuery no está definido

Estoy usando broma para probar mi componente reactJS. En mi componente reactJS, necesito usar jquery UI, así que agregué esto en el componente:

 var jQuery = require('jquery'); require('jquery-ui/ui/core'); require('jquery-ui/ui/draggable'); require('jquery-ui/ui/resizable');

Y funcionó bien. Pero, ahora, necesito usar jest para hacer pruebas, pero inmediatamente me encuentro con este problema cuando cargo el componente en testutils,

 Test suite failed to run ReferenceError: jQuery is not defined

¿Alguien ha resuelto este problema si está usando jQuery en su aplicación?

Gracias

over 4 years ago · Santiago Trujillo
2 answers
Answer question

0

Puede agregar la dependencia de jQuery en su objeto global . Haz lo siguiente

  1. En su package.json , bajo la clave de jest , agregue setupFiles de configuración como este "setupFiles": ["test-env.js"] Por ejemplo:
 { "jest": { "setupFiles": [ "<rootDir>/tests/test-env.js" ] } }
  1. Donde los contenidos en test-env.js ven así
 import $ from 'jquery'; global.$ = global.jQuery = $;

Asegúrese de que la ruta a test-env.js sea correcta desde su directorio raíz. <rootDir> está disponible en Jest.

over 4 years ago · Santiago Trujillo Report

0

Si está utilizando Jest 27+, el nodo ahora es el testEnvironment predeterminado. Si necesita usar jQuery en el script de configuración de jest, asegúrese de cambiar primero testEnvironment de nuevo a jsdom .

en jest.config.js :

 module.exports = { setupFilesAfterEnv: ['./jest.setup.js'], testEnvironment: 'jsdom' }

en jest.setup.js :

 import $ from 'jquery'; global.$ = $; global.jQuery = $; // If you want to mock bootstrap global.$.fn.modal = jest.fn(() => $()); global.$.fn.carousel = jest.fn(() => $()); global.$.fn.tooltip = jest.fn(() => $());
over 4 years ago · Santiago Trujillo Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!