2016-06-12 78 views
5

對於我的項目,我試圖設置摩卡來運行柴測試,但我有一個問題,根本沒有運行測試。瀏覽器報告沒有測試通過,失敗或正在運行。摩卡測試不運行Chai斷言使用流星

下面是測試的代碼:

import {assert} from 'chai'; 
import {Meteor} from 'meteor/meteor'; 

if (Meteor.isclient) { 

    describe('Recipe model', function() { 
     it('should test that a recipe is created', function() { 
      assert.isTrue(true); 
     }); 
    }); 
} 

我運行使用下面的命令的測試:

meteor test --driver-package practicalmeteor:mocha 

我已經安裝practicalmeteor:柴爲好。谷歌搜索建議在我的測試開始時加入chai.should(),但這沒有幫助。我接受所有建議。

乾杯!

+0

是否加載測試文件?你在哪裏放置該文件?你有沒有諮詢「流星指南」? – MasterAM

+1

我已經諮詢了流星指南很多次。據我所知,要運行測試,只需運行最初發布的行,並確保所有測試文件都是* .test.js。這些文件的位置應該沒有關係,但如果是這樣,我的測試位於root> client>測試下。 – Shyyk

+0

您是否讓您的客戶端測試運行@Shyyk? –

回答

0

原來,我有導入斷言奇怪的問題。我只需按照@Tdm的說明執行以下操作:

import {chai} from 'meteor/practicalmeteor:chai' 
+0

這應該被標記爲問題的答案。將它作爲評論並不一定表明問題已經解決。 – Xaniff

1

其中一個可能的問題是在代碼的第4行輸入錯誤:將Meteor.isclient替換爲Meteor.isClient。你的測試甚至沒有執行,因爲Meteor.isclient總是false

+0

你是對的!我將其更改爲正確的代碼,但仍未運行測試。此外,我可以採取有條件的,測試仍然不會運行... – Shyyk

+1

除了chai導入之外,我沒有看到任何其他問題(可能它應該是來自'meteor/practicalmeteor:chai'的import {assert}; ')。另外,我建議你查看[流星Todos](https://github.com/meteor/todos)項目。它包含測試示例,並且所有內容都已正確配置。 – Tdm

1

確保你不把你的測試文件放在/ tests目錄中。我知道它不直觀,但流星忽略了內部/測試中的一切。

+0

我遇到了這個問題,通過將「測試」重命名爲「test」('mv tests/test /')來修復它。 – blong

相關問題