2012-06-04 119 views
0

我需要爲我想用Jasmine測試的Javascript類添加功能。類定義是這樣的:如何在Jasmine中設置名稱空間進行測試?

GAME.Player.CustomPlayerSetup = function() { 
    ... 
}; 

如果我刪除GAME.Player我可以寫正常的測試,並讓他們通過。但是當嘗試在CustomPlayerSetup的類定義中離開Game.Player時,我得到的參考錯誤遊戲未定義。如何定義這個測試?

要回答查爾斯的建議,即使我宣佈比賽,球員在我的茉莉花測試文件瓦爾的的要求線它仍然給我之前,在

GAME = {}; 
GAME.Player = {}; 

CustomPlayerSetup = require("../CustomPlayerSetup").CustomPlayerSetup; 

describe("Custom Player Setup", function() { 
    ... 
}); 

,它指向同樣的錯誤生產代碼文件,而不是測試文件。我使用jasmine-node來運行測試。

回答

0

在我看來,您需要在運行/在jasmine測試中包含js文件之前實例化對象GAME.Player。喜歡的東西:

<script type="text/javascript"> 
    var GAME = {Player:{}}; 
</script> 
</script src="your_src.js"/> 
0

最有可能在你規範亞軍你有什麼文件實例化遊戲和/或運行規範的文件下的球員(或者你沒有包括在所有)。

如果不是這種情況,請嘗試發佈您的spec-runner以及其中一個失敗的測試。

相關問題