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
beforeAllin 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();
});