Jest Flashcards

1
Q

Wat betekent het als een test foutief eindigt met de error X is not a function?

A

Dit betekent dat de functie niet is gemocked (bijv.: functieNaam: jest.fn()). Hierdoor weet Jest niet waar functieNaam een functie van is.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

Hoe ga je om met API call imports in een test?

A

Meestal kun je die gewoon mocken. Hierbij mock je de response die de API terug zou geven met dummy data.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

Hoe doorloop je de code voordat je aan een test begint?

A

Je analyseert de ‘bouwstukken’ die je wilt gaat testen en gaat ze van boven naar onder een voor een bouwen.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

Hoe ga je om met timers zoals setTimeout en setIntervals in een Jest test?

A

Hiervoor dien je een jest.useFakeTimers() te gebruiken.

In de after- of beforeEach gebruik je jest.useRealTimers() om de originele timers te starten.

In de test gebruik je dan jest.runAllTimers() om gebruikte timers te starten mochten die in de code voor komen.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

Hoe roep je een hook aan in een test?

A

Door de renderHook() hook van de react testing library te gebruiken.

const { result } = renderhook( () => hook() )

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

Hoe gebruik je het resultaat van de hooks in een test?

A

Door result.current te gebruiken kun je de return van een hook ophalen.

Mocht je van een specifieke methode binnen de hook een return waarde willen overnemen, dan kan dit met result.current.methodName.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

Waar dient act() voor in een test?

A

Dit zorgt ervoor dat alle states en aanpassingen aan de DOM worden geleegd en verwerkt voordat er verder mee wordt gewerkt.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

Waar moet je op letten als je async functies gaat testen?

A

Gebruik ‘async’ in de ‘it-functie’ van de test.

En

Gebruik ‘await’ wanneer je functies gaat aanroepen die gebruik maken van een async functie of API call.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly