2013-04-05 47 views
1

我正在使用Mocha和Karma爲我的emberjs客戶端編寫和運行測試用例。我將所有測試用例都捆綁爲一個文件,並使用minispade.js來解決依賴性問題使用EmberJS,Mocha和Karma

我面臨的問題是,我能夠運行測試用例,但如果測試用例失敗,只顯示測試用例的描述,並沒有提供任何有關寫入大小寫的文件的信息。

如果有任何測試用例失敗,還有什麼辦法顯示文件名嗎?

+0

更新:因爲我使用chai斷言庫,所以可以使用以下命令打開堆棧跟蹤:chai.Assertion.includeStack = true – phkavitha 2013-04-06 11:47:31

+0

phkavitha,你能分享如何將minispade一起使用與業力?我已經嘗試過在所有東西附近使用,以使它們一起工作,但即使我已成功加載它們,我的測試文件也無法看到我的minispade模塊中定義的任何變量。 – stevekane 2013-05-27 07:24:10

回答

0

@stevekane,

是否使用minispade.require你的測試用例模塊中調用客戶端的代碼(即minispade包文件)()?

下面是我用minispade果報:

  1. 我將分別捆綁我的所有客戶端的代碼&測試用例到一個文件中。示例:client.js & test_cases.js。
  2. 我將有一個單獨的文件(比如test.js),我將聲明一些將用於運行我的測試用例的全局文件。在這個文件中,我也將調用我的客戶端的代碼,並使用minispade.require(試驗 - 例),這裏是我的test.js文件的樣式:

    mocha.setup({ ui: 'bdd', ignoreLeaks: true }); 
        var assert = chai.assert; ........ 
        window.minispade.require('app/main'); // Client's code 
        window.minispade.require("spec/main"); // Test cases 
    

    這裏main.js是指一個文件,其中我使用minspade.require()包含了我的所有客戶端& 測試用例模塊。

  3. 在karma配置文件中,我將在文件中包含測試用例代碼。我的配置文件將具有以下行:

files = [ 
      {pattern : 'test_cases.js', included: true}, 
      {pattern : test.js', included: true} 
      ]. 

4運行因緣運行命令。

希望我已經說清楚了。請嘗試一下,讓我知道如果你卡住了。