2017-06-05 61 views
2

我對使用ES6語法編寫的React組件執行摩卡測試。我正在使用伊斯坦布爾進行代碼覆蓋測試。當我把我的NODE_ENV爲「test`,我得到下面的輸出:當NODE_ENV設置爲測試時,nyc(istanbul)不起作用

----------|----------|----------|----------|----------|----------------| 
File  | % Stmts | % Branch | % Funcs | % Lines |Uncovered Lines | 
----------|----------|----------|----------|----------|----------------| 
All files | Unknown | Unknown | Unknown | Unknown |    | 
----------|----------|----------|----------|----------|----------------| 

可以看出,它說的一切未知。當我刪除NODE_ENV變量時,它工作正常。我能做些什麼來在上述環境中運行這個測試?

回答

2

我一直在試圖在過去兩天使用babel,nyc設置一個類似的環境並作出反應並面臨類似的問題。 你是如何設置NODE_ENV的?你在Windows上嗎?

這是我在我的package.json:

"test:c": "set NODE_ENV=test && npm run coverage" 

當此執行,Windows實際上設置NODE_ENV爲 「test」 不作爲 「測試」。 注意尾隨的空格。

我固定這通過從腳本中刪除空間:

"test:c": "set NODE_ENV=test&& npm run coverage" 
+0

我使用了NPM包稱爲'橫env'。所以我的測試腳本是 '「test」:「cross-env NODE_ENV =測試nyc摩卡」' 是的,我在Windows上。 – morghulis

+0

以及它好像你可能有同樣的問題,你的情況NODE_ENV可以解釋爲「測試」,用空格 嘗試拆分腳本中兩個腳本是這樣的: '「測試」:「橫ENV NODE_ENV = test && npm run actual_test「, 」actual_test「:」nyc mocha「 那樣NODE_ENV應該設置正確 –

+0

這對我有效。非常感謝! – morghulis

相關問題