Gulp: подождите, пока экспресс-сервер запустится, прежде чем запускать тесты.

Я новичок в node. Я создал образец экспресс-приложения и написал для него несколько BDD-тестов, используя Cucumber.js. Я хотел бы автоматизировать тесты с помощью gulp, чтобы при запуске тестов сначала запускалось экспресс-приложение, а после запуска сервера выполнялись тесты. Однако в настоящее время тесты запускаются до запуска сервера, и поэтому все они терпят неудачу. Есть ли способ дождаться (используя gulp) запуска сервера и только потом запускать тесты?

Здесь я использую gulp-cucumber и gulp-express (несколько скрытый gulp-load-plugins).

Мой глоток (частичный):

var gulp = require('gulp'),
  plugins = require('gulp-load-plugins')();

gulp.task('server', function () {
  plugins.express.run(['bin/www']);
});

gulp.task('cucumber', ['server'], function() {
  return gulp.src('features/*').pipe(plugins.cucumber({
    'steps': 'features/steps/*.steps.js',
    'support': 'features/support/*.js'
  }));
});

gulp.task('test', ['server', 'cucumber']);

person joniba    schedule 30.10.2015    source источник


Ответы (1)