Appendice

Di seguito sono riportati alcuni concetti e informazioni aggiuntivi che potrebbero esserti utili nel tuo percorso di sviluppo dei test.

Vitest come test runner

Vitest è un framework e un runner di test in crescita in termini di popolarità. Questo corso lo utilizza ogni volta che sono necessari esempi specifici, ma molti dei sample inclusi sono generici e si applicano a qualsiasi framework scelto.

La maggior parte dei runner o dei framework di test tende ad avere molti aspetti in comune e questo corso sarà utile indipendentemente dallo stack scelto. Abbiamo scelto di concentrarci su Vitest per diversi motivi:

  • È moderno e richiede pochissimo lavoro da impostare o configurare, al contrario di altri test. Sebbene sia basato sullo strumento di compilazione Vite, Vitest funziona ancora con i progetti esistenti.

  • Inoltre, supporta perfettamente l'utilizzo dei moduli EcmaScript (ESM), inclusa la simulazione di intere importazioni. Sebbene presenti alcuni inconvenienti, è più stabile rispetto ad altri strumenti.

Soprattutto, presenta un'API ampiamente compatibile con Jest, probabilmente il runner più popolare. Anche in questo caso, il modo in cui strutturi e raggruppi i test tende a essere simile, indipendentemente dal framework utilizzato. Le funzionalità più avanzate, come le doppie di test complicate, tendono ad allontanarsi un po' di più. Questo corso utilizza Vitest per descriverli, ma descrive sempre anche la soluzione generica.

React come modello di componenti

Sebbene questo corso fornisca esempi di codice generale che testano il codice JavaScript normale, come le funzioni matematiche, passa rapidamente al test dei componenti React prima di includere in seguito i componenti web in generale e l'utilizzo di Lit. Anche questo corso utilizza Next.js.

Si tratta di una scelta pratica. Nonostante le critiche, React è il framework più utilizzato tra i partecipanti al sondaggio State of JS.