2017-03-06 55 views

回答

1

您可以使用mock-require来模拟任何模块,包括child_process。请参阅:

你需要提供的对象与你需要的属性。你没有指定你需要的东西,所以很难更具体,但例如你可能需要提供一个模拟的stdout流或类似的东西,你可以在测试中做好准备。

0

对我的很好答案

var events = require('events');

  var eventEmitter = new events.EventEmitter(); 

      var messagehandle = function (message, callback) { 

       if (message.action == 'init') 
        callback('init complete'); 
      } 

      eventEmitter.addListener('message', messagehandle); 

      eventEmitter.send = function (message) { 
       eventEmitter.emit('message', message, message.cb); 
      } 
      var mockprocess = { 
       fork: function (path) { 
        return eventEmitter; 
       } 
      }; 

      mock('child_process', mockprocess);