React / Next.js

React Testen

React Testing Library, Jest, Vitest, componententests, mocking, gebruikersinteracties, coverage

20 gespreksvragen·
Mid-Level
1

Wat is het belangrijkste verschil tussen getBy, queryBy en findBy in React Testing Library?

Antwoord

getBy gooit een fout als het element niet bestaat (synchrone assertions), queryBy retourneert null als het element niet bestaat (afwezigheid controleren), en findBy retourneert een Promise voor asynchrone elementen. Gebruik standaard getBy voor elementen die moeten bestaan, queryBy om te controleren of een element niet aanwezig is, en findBy om te wachten tot een element verschijnt na een vertraging.

2

Wat is het belangrijkste voordeel van getByRole ten opzichte van getByTestId?

Antwoord

getByRole bevordert best practices voor toegankelijkheid door elementen te targeten op hun semantische ARIA-rol (button, textbox, heading), wat de toegankelijkheid van componenten voor schermlezers verbetert. getByTestId vereist het toevoegen van kunstmatige data-testid-attributen die geen waarde bieden voor eindgebruikers. React Testing Library raadt aan om getByRole, getByLabelText en getByText te verkiezen boven getByTestId.

3

Hoe test je de conditionele rendering van een element dat NIET aanwezig is in de DOM?

Antwoord

Gebruik queryBy om de afwezigheid van een element te verifiëren, aangezien het null retourneert in plaats van een fout te gooien. Voorbeeld: expect(screen.queryByText('Error')).toBeNull() of expect(screen.queryByText('Error')).not.toBeInTheDocument(). getBy zou een fout gooien en de test laten falen, terwijl findBy wacht tot het element verschijnt (timeout bij afwezigheid).

4

Waarom raadt React Testing Library aan om implementatiedetails NIET te testen?

5

Wat is het verschil tussen render en screen in React Testing Library?

+17 gespreksvragen

Beheers React / Next.js voor je volgende gesprek

Krijg toegang tot alle vragen, flashcards, technische tests, code review-oefeningen en gespreksimulatoren.

Begin gratis