Sto imparando il backbone quindi sto costruendo una semplice app Backbone. Sto usando il framework jasmine per testare la mia app backbone.Miglior approccio per testare le viste backbone con i modelli usando Jasmine
Per fortuna, il mio primo test al gelsomino era per una vista spettrale. Questa è una vista molto semplice che utilizza un modello haml-js. Gli utenti delle app eseguono rails 3.1, quindi l'intero pacchetto è pacchettizzato con l'aiuto di haml-sprockets gem e funziona.
Tuttavia quando ho test con il gelsomino ottengo un errore
TypeError: Cannot call method 'backbone/templates/admin_personal_attribute_template' of undefined
ho capito che questo è perché template Haml-js non è presente.
Normalmente questo modello si accede in questo modo:
$(this.el).html(window.JST["backbone/templates/admin_personal_attribute_template"]({pars:this.model.attributes}));
(cioè HAML-pignoni gioiello compila utilizza Haml-js e accoda a window.JST).
Sto cercando il modo "migliore", meno distruttivo e, si spera, semplice, per testare le mie viste + modelli in gelsomino.
ho trovato un certo numero di modi per farlo, ma non è sicuro come quello che è il 'migliore':
- Usa gelsomino-senza testa-webkit. Questo utulizzerà i pignoni, ma la capacità di accedere al server jasmine è così semplice, ma una certa perdita di flessibilità
- L'uso di phantom.js come descritto da japhr (mi dispiace che StackOverflow mi impedisca di pubblicare più collegamenti) funzionerà attorno alle limitazioni lato server, ma questo sembra essere un metodo molto nuovo e non testato, così flessibile ma non semplice
- Pre-generare i propri modelli come descritto here. Questo è concettualmente semplice, ma richiede un po 'di manutenzione - quindi alcuni lavori di codifica
Supponendo che abbia un progetto con ~ 20 modelli e ~ 40 viste e modelli, qual è il modo migliore per andare?
il primo collegamento è stato modificato in: https://github.com/addyosmani/backbone-fundamentals/blob/gh-pages/chapters/13-unit-testing .md – ylerjen