I file di test/spec di grandi dimensioni tendono a significare che il codice in prova potrebbe essere eccessivo. Tuttavia, questo non è sempre il caso, spesso il tuo codice di test peserà sempre il codice sotto test, ma se stai trovando difficile gestirlo potrebbe essere un segnale.
Tendo a raggruppare i test in base alla funzionalità. Immaginate di avere example.js
, mi aspetterei che example.tests.js
iniziasse.
Piuttosto che una specifica chiamata ExampleSpec
tendo ad avere molte specifiche/test basati su contesti diversi. Ad esempio, potrei avere EmptyExample
, ErrorExample
e DefaultExample
che hanno precondizioni diverse. Se questi diventano troppo grandi, o hai delle astrazioni mancanti, o dovresti pensare a dividere i file. Così si potrebbe finire con una struttura di directory come ad esempio:
specs/
Example/
EmptyExample.js
ErrorExample.js
DefaultExample.js
Per cominciare, però, un test/file spec per ogni file di produzione dovrebbe essere il punto di partenza. Separare solo se necessario.
quindi come eseguirlo? Mi piacerebbe "mocha testAll.js". testAll.js includerà tutti i sottotest. Come ottengo questo? –
Ho la stessa domanda su come includere i sottotest. Finora sembra che sia necessario richiedere moka e utilizzarlo programmaticamente per includere altri test senza rompere le cose. O quello o utilizzare --recursive sulla riga di comando per raccogliere tutti i file. –
@ NicolasS.Xu rispondere molto tardi ma tutte le specifiche potrebbero (dovresti?) Essere moduli commonjs richiesti in un 'index.js' a livello di sottocartella che richiama effettivamente le tue specifiche. Funziona benissimo in combinazione con gli script npm. –