vitest
Free to host · players join from their phones
Mocks, stubs & spies
-
Wat is volgens de klassieke indeling van Fowler en Meszaros het verschil tussen een stub en een mock?
Show answer
D
-
In diezelfde indeling is een spy een stub die daarnaast bijhoudt hóe hij is aangeroepen.
Show answer
true
-
Wat geeft de laatste aanroep terug? ```ts const fn = vi.fn(() => 'impl') fn.mockReturnValue('mocked') fn.mockReset() fn() ```
Show answer
D
-
`vi.restoreAllMocks()` zet ook mocks die je met `vi.fn()` hebt gemaakt terug naar hun oorspronkelijke staat.
Show answer
false
-
Je hebt `vi.spyOn(person, 'greet').mockImplementation(...)` gedaan. Welke methode zorgt dat `person.greet` daarna weer letterlijk de originele functie is?
Show answer
D
Hoisting & module mocks
-
Deze test faalt met `Cannot access 'mockFetch' before initialization`. Waarom? ```ts const mockFetch = vi.fn() vi.mock('./api', () => ({ fetchUser: mockFetch })) ```
Show answer
C
-
Wat is het belangrijkste verschil tussen `vi.doMock` en `vi.mock`?
Show answer
A
-
Welke optie bij `vi.mock('./calculator.ts', ...)` laat de echte implementaties intact maar maakt van elke export een spy?
Show answer
A
-
Wat gebeurt er als je `vi.mock('./api')` binnen een `describe`-callback zet?
Show answer
B
Concurrency & parallellisme
-
Hoeveel concurrent tests laat Vitest standaard tegelijk lopen (`maxConcurrency`)?
Show answer
5
-
Twee volledig synchrone tests met `test.concurrent` leveren geen tijdwinst op.
Show answer
true
-
Waarom moet je in `test.concurrent` de `expect` uit de test-context gebruiken (`async ({ expect }) => ...`)?
Show answer
B
-
Welke pool gebruikt Vitest standaard om testbestanden te draaien? (alleen de naam van de pool)
Show answer
forks
-
Met welke CLI-flag draai je testbestanden één voor één in plaats van parallel? (alleen de flag)
Show answer
--no-file-parallelism
-
Elke `test.concurrent`-test krijgt van Vitest een eigen worker toegewezen.
Show answer
false
Valkuilen & black box
-
Welke van de twee assertions slaagt? ```ts const arg = { value: 0 } const fn = vi.fn() fn(arg) arg.value = 10 expect(fn).toHaveBeenCalledWith({ value: 0 }) expect(fn).toHaveBeenCalledWith({ value: 10 }) ```
Show answer
A
-
Wat is `fn.mock.results[0].type` na deze code? ```ts const fn = vi.fn().mockRejectedValue(new Error('boom')) await fn().catch(() => {}) ```
Show answer
C
-
Wat maakt een test volgens de ISTQB-definitie een black-box test?
Show answer
C
-
Welke techniek hoort níet bij black-box testing?
Show answer
B
-
In de standaardconfiguratie van Vitest 4 wordt de call-historie van mocks vóór elke test gewist.
Show answer
false
-
Hoeveel milliseconden is de standaard `testTimeout` van Vitest?
Show answer
5000