I test fixture sono la configurazione fissa (dati, oggetti, stato) di cui i test hanno bisogno per essere eseguiti, e i metodi setup/teardown preparano e puliscono questo contesto prima e dopo i test. Riducono la duplicazione e garantiscono che i test vengano eseguiti in uno stato coerente e isolato.
Setup e teardown
SETUP → runs BEFORE tests to prepare the context (create objects, data, connections)
TEARDOWN → runs AFTER tests to CLEAN UP (close connections, delete data, reset state)
→ frameworks provide hooks:
beforeEach / afterEach → before/after EACH test (fresh state per test — common)
beforeAll / afterAll → once before/after ALL tests in a group (shared expensive setup)
