2015-02-06 34 views
7

我是新手,想用jest測試,我似乎無法看到我想測試的模塊的控制檯輸出。當我使用笑話測試節點應用程序時,爲什麼看不到控制檯日誌輸出

我-module.js:

我模塊-test.js:

jest.dontMock('../my-module'); 

var testdata = [{label: "test"}, {id: 5}]; 

describe('test my module', function(){ 
    it('changes some data' , function(){ 
     var transformedData = require('../my-module').filter(testdata); 
     expect(transformedData).toBe(testdata[0]); 
    }); 
}); 

爲什麼笑話吞嚥我的console.log輸出「我-module.js」?

回答

3

Jest似乎在默認情況下模擬了一切。這是我遇到的問題。

下劃線「_」被嘲笑,並沒有可見的錯誤,所以執行從來沒有得到console.log首先。

有三種可能(據我所知),以防止這樣的情況:

  1. 在你的package.json文件,防止節點模塊嘲諷(包括下劃線)

    "jest": { "unmockedModulePathPatterns": ["/node_modules/"] }

  2. 使用明確防止汽車嘲諷你的測試文件:

    jest.autoMockOff();

  3. 明確地嘲諷排除下劃線:

    jest.unmock('underscore');

相關問題