का उपयोग कर यूनिट टेस्ट मैं https://angular.io/docs/js/latest/quickstart.html से helloworld एप्लिकेशन के लिए इकाई परीक्षण लिखने के लिए कर्म, जैस्मीन, टाइपस्क्रिप्ट का उपयोग कर रहा हूं।टाइपस्क्रिप्ट और कर्म
///<reference path="../typings/jasmine/jasmine.d.ts"/>
import {
MyAppComponent
} from '../spray1';
describe("name is Alice",() => {
var comp = new MyAppComponent();
it("verify name",() => {
expect(comp.name).toBe("Alice");
});
});
tsc (के साथ "--module commonjs") में इस परीक्षण कोड transpiles:
नीचे परीक्षण कोड है
///<reference path="../typings/jasmine/jasmine.d.ts"/>
var spray1_1 = require('../spray1');
describe("name is Alice", function() {
var comp = new myAppComponent_1.MyAppComponent();
it("verify name", function() {
expect(comp.name).toBe("Alice");
});
});
कर्म इकाई परीक्षण चलाने के लिए विफल रहता है:
Uncaught Error: Module name "../myAppComponent" has not been loaded yet for context: _. Use require([]) http://requirejs.org/docs/errors.html#notloaded at /Users/spray1/web2/node_modules/requirejs/require.js:141
Chrome 43.0.2357 (Mac OS X 10.10.3): Executed 0 of 0 SUCCESS (0 secs/0 secs)
यदि मैं "- मॉड्यूल एएमडी" के साथ टीएससी का उपयोग करता हूं, तो पारदर्शी परीक्षण कोड है:
define(["require", "exports", '../spray1'], function (require, exports, spray1_1) {
describe("name is Alice", function() {
var comp = new spray1_1.MyAppComponent();
it("verify name", function() {
expect(comp.name).toBe("Alice");
});
});
});
"कर्म शुरू परीक्षण/karma.conf.js" transpiled js फ़ाइलों पर त्रुटि नीचे फेंक दिया:
Uncaught Error: Mismatched anonymous define() module: function (require, exports, spray1_1) { describe("name is Alice", function() { var comp = new spray1_1.MyAppComponent(); it("verify name", function() { expect(comp.name).toBe("Alice"); }); }); } http://requirejs.org/docs/errors.html#mismatch at /Users/spray1/web2/node_modules/requirejs/require.js:141 Chrome 43.0.2357 (Mac OS X 10.10.3): Executed 0 of 0 ERROR (0.04 secs/0 secs)
जैसा कि आप देख, मैं मुसीबत यह किसी भी तरह से काम करने के लिए है (--module commonjs/एएमडी)। जाने का सही तरीका और इसे कैसे काम करना है? किसी भी मदद की सराहना करें!
आप फ़ाइलों का संदर्भ कैसे दे रहे हैं? क्या आप एकाधिक स्क्रिप्ट टैग का उपयोग कर रहे हैं? – Fenton
टाइपस्क्रिप्ट और उनके संबंधित टेस्टकेस को संकलित करने और चलाने के लिए गल्प का उपयोग करें। अधिक जानकारी के लिए https://medium.com/@bojzi/anatomy-of-a-large-angular-application-f098e5e36994#.mmfb9jtml पढ़ें। – Ajay