2013-05-19 89 views
0

我的測試運行在我的OS X環境很好,但是當我在我的Ubuntu運行它們(EC2)服務器,測試失敗:compoundjs摩卡測試失敗Ubuntu的服務器上

✖ 1 of 40 tests failed: 
1) AccountController "before each" hook: 
Error: done() invoked with non-Error: [object Object] 
    at CompoundServer.<anonymous> (/usr/lib/node_modules/mocha/lib/runnable.js:198:38) 
    at CompoundServer.EventEmitter.emit (events.js:95:17) 
    at CompoundServer.initCompound (/home/ubuntu/TeamCity/buildAgent/work/1d2dd0b199edbe3f/node_modules/compound/lib/compound.js:133:14) 
    at CompoundServer.initCompoundServer [as init] (/home/ubuntu/TeamCity/buildAgent/work/1d2dd0b199edbe3f/node_modules/compound/lib/server/compound.js:53:29) 
    at /home/ubuntu/TeamCity/buildAgent/work/1d2dd0b199edbe3f/node_modules/compound/lib/compound.js:62:18 
    at process._tickCallback (node.js:415:13) 

我做的正在運行摩卡測試/ *。這可能是由於compoundjs或node.js的差異造成的嗎?在我工作的Mac上,我在v0.8.22上,在ubuntu服務器上它是v0.10.5。同樣在ubuntu上的複合版本是1.1.7-1,而在mac(working)上是1.1.6。

+0

看起來像一個版本問題與compoundjs。升級到我的Mac上的複合1.1.7-1,現在有相同的問題。我是否需要重新生成控制器...等等?或者有沒有可以添加到測試中的修復程序? – Michael

回答

0

看起來像是應用程序由以前版本的化合物生成的問題。我生成的測試

compound.on('ready', done); 

更改該行

compound.on('ready', function() { 
     done(); 
    }); 

解決了這一問題。