Sobes.tech
Junior — Middle

Wat is het verschil tussen initialisatie met Before All en Before Each in testframeworks?

sobes.tech AI

Antwoord van AI

Before All en Before Each zijn hooks (functies) die worden uitgevoerd vóór de tests, maar met verschillende reikwijdtes:

  • Before All (bijvoorbeeld beforeAll in Jest) wordt één keer uitgevoerd vóór alle tests in de set. Wordt gebruikt om gemeenschappelijke bronnen te initialiseren die in alle tests kunnen worden hergebruikt.

  • Before Each (bijvoorbeeld beforeEach) wordt vóór elke individuele test uitgevoerd. Wordt gebruikt om een schone staat voor te bereiden vóór elke test, zodat tests elkaar niet beïnvloeden.

Voorbeeld:

beforeAll(() => {
  // Wordt één keer uitgevoerd
  initializeDatabaseConnection();
});

beforeEach(() => {
  // Wordt vóór elke test uitgevoerd
  resetTestData();
});