spec/category_keyword/categories.htmlに備品を読み込もうとしています。フィクスチャの内容はkeywordsListView.elは、固定具が何らかの形でロードされていないことを私に示唆している定義されていない、しかしjqueryジャスミン、備品がロードされていません
私のテスト
$(function() {
beforeEach(function(){
keywordsListView = new KeywordsListView({
el: $("#keywords_list")
})
})
it("should ...", function() {
expect(keywordsListView.el.attr("id")).toEqual("keywords_list");
})
})
です。私はジャスミンスイートを火かき棒で見ましたが、治具に関連するものは何も見ませんでした。私はジャスミンの宝石を使用しています。私は何かを有効にしなければなりませんか?
「el:」「myCoolJQuerySelector」のようにクールであるため、ビューをテストするのが難しくなります。私はいつもコンストラクタのviews要素を渡しますので、私がテストしているときに私の見解に簡単に擬似を入れることができます。 –
私はあなたを理解しているか分からない。 keywordsListView.elはいずれの方法でも定義されていません。 –
あなたのテストでは、新しいDOM elを作成してビューに渡すことができます。あるいは、模擬テストを渡すだけでよいので、テスト中はDOMに依存しません。ビュー内のDOMの照会は、テストするクラスに新しいインスタンスを作成するような反パターンです。確かにこれはあなたの具体的な質問に対する直接的な答えではありませんでしたが、装備を積み込むことで台無しにならない方法を示しています。 –