Vorrei fornire semplici valori costanti come nomi, e-mail, ecc. Da utilizzare nei miei test di unità di gelsomino.Come posso fornire valori di dati campione riutilizzabili ai miei test di unità angularjs/jasmine
Una domanda simile è stato chiesto qui: AngularJS + Karma: reuse a mock service when unit testing directives or controllers
In C# vorrei creare una classe statica per contenere piccoli frammenti di dati di finte. Posso quindi utilizzare questi valori durante i miei test di unità, in questo modo:
static class SampleData
{
public const string Guid = "0e3ae555-9fc7-4b89-9ea4-a8b63097c50a";
public const string Password = "3Qr}b7_N$yZ6";
public const string InvalidGuid = "[invalid-guid]";
public const string InvalidPassword = "[invalid-password]";
}
Vorrei avere la stessa comodità quando si prova la mia app AngularJS utilizzando Karma/Jasmine.
So che posso definire un oggetto constant
contro la mia app angolare, ho già fare questo per le costanti che uso nel codice vero e proprio, in questo modo:
myApp.constant('config', {apiUrl:'http://localhost:8082'})
potrei aggiungere un'altra costante, proprio come questo, ma solo contenente i valori dei dati campione per l'uso in mio test di unità, in questo modo:
myApp.constant('sampleData', {email: '[email protected]'})
ho potuto quindi solo iniettare oggetto costante finto nei test e via andare, come questo
describe 'A sample unit test', ->
beforeEach -> module 'myApp'
beforeEach inject ($injector) ->
@sampleData = $injector.get 'sampleData'
email = @sampleData.email
# etc ...
Tuttavia questo mi sembra un po 'strano. Non voglio che il mio codice di produzione contenga dati campione che sono richiesti solo dai miei test unitari.
In che modo forniresti comodamente i test di unità angolari/gelsomino con valori di dati campione riutilizzabili?
Grazie
Vuoi dire nel contesto della fornitura di oggetti mock per testare i servizi, o sei parlando di valori di test da utilizzare nei test di unità? – Ben
Solo valori di test semplici e riutilizzabili da utilizzare nei test unitari. Ho chiarito la domanda. – biofractal
è simile? http://stackoverflow.com/questions/16563967/angularjs-karma-reuse-a-mock-service-when-unit-testing-directives-or-controll puoi modificare il file karma.conf.js per aggiungere file extra, come mock e caricarli nei test –