Sto rifattorizzando alcuni moduli JavaScript personalizzati scritti per supportare la nostra funzionalità di mappatura. Sto cercando di renderli molto più testabili e in grado di collegare i pezzi dentro e fuori più facilmente.
La mia domanda riguarda la manipolazione dell'interfaccia utente e la logica di business nello stesso modulo. So che avere la parte UI rende i test delle unità un po 'più difficili. Penserei anche che disaccoppiare la parte dell'interfaccia utente consentirebbe ad altre persone di aggiungere il proprio livello di interfaccia utente se volessero modificare l'aspetto e mantenere la funzionalità principale.
Modifica : lavoro di più con i moduli Dojo poiché ciò che l'API di mappatura è costruita sopra. Ho pensato che dal momento che Dojo ci fosse, lo useremmo. Sto scoprendo che i moduli Dojo non si prestano ad essere facilmente testati (ho provato ad usare Doh ed è il framework di testing più intuitivo con cui abbia mai lavorato). Sto pensando di creare più moduli JS vanilla e ho solo provato a usare ciò che ho assolutamente bisogno da Dojo. È lì che mi è venuta l'idea di separare il livello della UI dalla logica per ogni modulo.
Qualcuno ha suggerimenti su come possono essere disaccoppiati?