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

195
Views
Reaccionar: probar el componente de cuenta regresiva con broma (cómo esperar 1 segundo en broma cuando se usa setInterval)

Tengo un componente de cuenta regresiva básico basado en reaccionar y quiero escribir una prueba de unidad adecuada para verificar los cambios de número. hasta ahora probé de dos maneras diferentes, (la primera, es para decir en broma que voy a esperar aquí para que no se preocupen por el tiempo. y la segunda, es para burlarse de los cambios de hora). pero ninguno de ellos no tuvo éxito.

Primer enfoque:

 describe('Test CountdownTimer component', () => { jest.setTimeout(60000); test('Shoud show current time 1 second later', async done => { const { getByText } = render(<CountdownTimer initialTime={10000} />); await act(async () => { await new Promise((r) => setTimeout(r, 1000)); }) expect(getByText('00:09')).toBeTruthy(); }); });

También cansado:

 describe('Test CountdownTimer component', () => { jest.setTimeout(60000); test('Shoud show current time 1 second later', async done => { const { getByText } = render(<CountdownTimer initialTime={10000} />); await new Promise((r) => setTimeout(r, 1000)); expect(getByText('00:09')).toBeTruthy(); }); });

Segundo enfoque:

 describe('Test CountdownTimer component', () => { beforeEach(() => { jest.useFakeTimers(); }) test('Shoud show current time 1 second later', async done => { const { getByText } = render(<CountdownTimer initialTime={10000} />); act(() => { jest.advanceTimersByTime(1000); }); expect(getByText('00:09')).toBeTruthy(); }); }); // error: thrown: "Exceeded timeout of 5000 ms for a test. Use jest.setTimeout(newTimeout) to increase the timeout value, if this is a long-running test."

Es interesante que no haya ningún tutorial completo o documentación bien detallada sobre las pruebas relacionadas con el tiempo en Jest. 🤔

about 4 years ago · Juan Pablo Isaza
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!