code: function () {
      var self = this;
  
      return new Promise(function (resolve, reject) {
        var configuration      = new CucumberConfiguration(),
            runtime            = Cucumber.Runtime(configuration),
            formatters         = configuration.getFormatters(),
            eventMediator      = new EventEmitter(),
            interceptFormatter = new InterceptFormatter(eventMediator);
  
        formatters.forEach(function (formatter) {
          runtime.attachListener(formatter);
        });
  
        runtime.attachListener(interceptFormatter);
  
        runtime.start(function () {
          resolve();
        });
  
        eventMediator.on('scenario end', function () {
          self.testsFinished++;
          self.totalTests++;
          self.checkMemory();
        });
  
        eventMediator.on('fail', function () {
          self.hasFailingTest = true;
        });
  
        eventMediator.on('end', function () {
          self.checkFinishedTests();
          self.checkTestCount();
          self.checkMemory();
  
          process.send({
            type : 'suiteDone',
            data : process.env.WORKER_TEST
          });
  
          cluster.worker.kill(0);
        });
      });
    }
docs: ////////////////////////////////////////////////////////////////////////// Public methods ///////////////////////////////////////////////////////// //////////////////////////////////////////////////////////////////////// 
  CucumberRunner.start() -> Object