C'è un posto dove i miei test possono vivere senza essere gestiti da Meteor?Dove dovrebbero essere piazzati i test unitari in Meteor?
Ho appena iniziato il mio primo progetto Meteor e ho iniziato scrivendo i test unitari con Mocha e should.js. Sebbene la mocha funzioni senza problemi, i test impediscono l'avvio di Meteor poiché presenta problemi utilizzando il nodo require
anziché __meteor_bootstrap__.require
(full error message).
Detto questo, Meteor non dovrebbe eseguire i miei test! In base allo Meteor documentation, il codice può essere inserito solo sul client, sul server o su entrambi. Le suite di test unitarie non appartengono a queste categorie e io sono not the only person confuso dalla mancanza di una posizione ben definita di Meteor per l'esecuzione di test automatici.
In questo momento, i miei test sono tenuti in server/test/
, con il contenuto di ciascun file avvolto nel blocco:
if (typeof(Meteor) === 'undefined') { ... }
Anche se questo funziona, ma non si sente elegante. Hai altri suggerimenti per strutturare i tuoi test con la tua app Meteor?
Aggiornamento: al posto di istruzioni esplicite nei documenti Meteor, ho seguito il Rails folder conventions (4 ° comma), utilizzando una cartella denominata test
per memorizzare i miei beni di test. In seguito l'ho spostato su server/test
poiché non volevo che fosse caricato sul client.
Questo ha bisogno di aggiornamento. Credo che Meteor Velocity e Jasmine siano una buona scelta ora. –