Я запускаю модульные тесты с использованием QUnit и пытаюсь интегрировать QUnit в процесс автоматизации нашей сборки и непрерывной интеграции. Чтобы Atlassian Bamboo проанализировал результаты теста, он должен находиться в файле XML. Я могу создать консольный журнал в требуемом формате xml с помощью плагина qunit-reporter-junit. Когда Gulp-QUnit запускает наш файл test-runner.html, он выводит console.log на экран. Моя проблема в том, что я не могу найти способ передать этот файл console.log в файл.
Я пробовал следующие подходы:
Использование плагина gulp-log-capture (ничего не делает):
gulp.task('qunit', function() {
return gulp.src('./qunit/test-runner.html')
.pipe(logCapture.start(console,'log'))
.pipe(qunit())
.pipe(logCapture.stop('build.xml'));
});
Передача вывода в поток записи (который выдает ошибку):
gulp.task('qunit', function() {
return gulp.src('./qunit/test-runner.html')
.pipe(qunit())
.pipe(fs.createWriteStream('build.xml));
});
Использование плагина gulp-out (который просто передает входной html в новый файл):
gulp.task('qunit', function() {
return gulp.src('./qunit/test-runner.html')
.pipe(qunit())
.pipe(out('build.xml');
});
XML прямо на экране, мне просто нужно каким-то образом поместить его в файл.