私はJasmineを使ってBackboneベースのアプリケーションをテストする方法を学びました。このため、私はここからいくつかのサンプルコードを手に入れました:http://msdn.microsoft.com/en-us/scriptjunkie/hh377172それを実行している間バックボーン - Jasmineを使った単純なモデルをTypeErrorでテストする
describe("Photo Model", function() {
it("verifies title", function() {
var myPhoto = new Photo();
myPhoto.set({ title: "On the beach" });
expect(myPhoto.get("title"))
.toEqual("On the beach");
});
});
、テストは以下のコードは、おそらく犯人ではTypeError
TypeError: Object [object Object] has no method 'apply'
at new <anonymous> (http://localhost:88/backbone/WebClient-Backbone2/js/backbone.js:1103:41)
at [object Object].<anonymous> (http://localhost:88/backbone/WebClient-Backbone2/test/spec.js:28:16)
at [object Object].execute (http://localhost:88/backbone/WebClient-Backbone2/test/lib/jasmine/jasmine.js:1001:15)
at [object Object].next_ (http://localhost:88/backbone/WebClient-Backbone2/test/lib/jasmine/jasmine.js:1790:31)
at [object Object].start (http://localhost:88/backbone/WebClient-Backbone2/test/lib/jasmine/jasmine.js:1743:8)
at [object Object].execute (http://localhost:88/backbone/WebClient-Backbone2/test/lib/jasmine/jasmine.js:2070:14)
at [object Object].next_ (http://localhost:88/backbone/WebClient-Backbone2/test/lib/jasmine/jasmine.js:1790:31)
at [object Object].start (http://localhost:88/backbone/WebClient-Backbone2/test/lib/jasmine/jasmine.js:1743:8)
at [object Object].execute (http://localhost:88/backbone/WebClient-Backbone2/test/lib/jasmine/jasmine.js:2215:14)
at [object Object].next_ (http://localhost:88/backbone/WebClient-Backbone2/test/lib/jasmine/jasmine.js:1790:31)
エラーがspec.js.のスローライン28であると思われますスペックファイル全体をここに投稿しましたか? –
コード全体は上記のとおりです。 ** Photo **の定義とそれに続くスペック定義。したがって、28行目は '\t \tです。var myPhoto = new Photo();' – Karthik
問題は、「new」が2回実行されたことが原因です。モデル定義から "new"を削除した後、問題の仕様が実行され、渡されました。 – Karthik