Ich habe ein Projekt, das Webpack verwendet, um den gesamten Code in einer einzigen Datei zu bündeln. Das Projekt verwendet Typoskript und es funktioniert im Moment gut.Unit Testing mit Webpack, Jasmine (-core), Typoskript
Ich bin gegangen, um Unit Testing hinzuzufügen und Jasmin scheint der Weg (eine der vielen Möglichkeiten) zu sein. Es ist eigentlich Jasmin-Kern, der in der package.json enthalten ist - nicht sicher, wie viel von einem Unterschied macht.
So einen sehr einfachen Test läuft wie
it('true is true', function(){ expect(true).toEqual(true); });
gut funktioniert. Aber wenn ich Tests hinzufügen, die die Verwendung einer Einfuhr erfordern - zB
import MyService = require('./MyServices');
dann, wenn ich die Tests ausführen es beschwert sich, da es nicht weiß, was ‚require‘ ist.
Jetzt vermute ich, das ist, weil ich das Testmodul in einer ähnlichen Weise verpacken muss, dass ich das Hauptprojekt verpacke.
Also, was ist der beste Weg, dies zu tun? Sollte ich mehrere Einstiegspunkte in der Datei webpack.config.js haben - einen für jede * .specs.ts-Datei? Oder ist es eine Möglichkeit zu sagen haben eine unbekannte Anzahl von spec Dateien
Eintrag akzeptieren: [* .spec.ts] und hat es Ausgabe eine js-Datei für jeden - * .spec.js
Das sieht ideal aus. Gehen Sie, um die Probe aus dem einfachen Repo jetzt versuchen, lassen Sie es hoffen, dass so einfach :) – delp
Wie Sie Jasmin verwenden, können Sie die Zeile ersetzen 'Frameworks: ['Mocha', 'Chai', 'Sinon'],' durch 'frameworks: ['jasmine'],' Sie können den Mocha-Reporter anstelle des Fortschrittsreporters verwenden. –