2015-03-25 3 views
0

У меня есть проект Javascript, который использует Grunt для процесса сборки, QUnit для тестов, Blanket для покрытия кода и пользовательскую задачу Grunt для преобразования результатов покрытия в файлы LCOV, отсылаемые в Coveralls. Все работает на TravisCI.Временные файлы на Travis

проект: https://github.com/mistic100/jQuery-QueryBuilder
моя Grunt задача: https://github.com/mistic100/grunt-qunit-blanket-lcov

Так что должно произойти, что npm test работает QUnit + Одеяло испытания в процессе PhantomJS и в то же время, результаты покрытия сохраняются в .coverage-results/all.lcov.

После успешной сборки grunt coveralls отправляет этот файл в Комбинезон.

И моя проблема здесь, задача не находит файл, хотя при тестировании на моем компьютере это происходит.

посмотреть последний журнал Travis: https://travis-ci.org/mistic100/jQuery-QueryBuilder#L389

Единственное, что я могу думать о том, что файл, по какой-то причине, удаляется после завершения npm test. Является ли это возможным ?


редактировать так что это не имеет ничего общего с Трэвисом, но с моей Grunt задачи, где я использую абсолютные пути, думая, что это относительные пути (я до сих пор не знаю, почему он не добавляет в Windows, хотя)

ответ

0

Единственное, о чем я могу думать, это то, что файл по какой-то причине удаляется после завершения теста на npm. Является ли это возможным ?

Нет, жизненные циклы артефактов сборки все еще присутствуют при выполнении команд after_success.

Gruntfile.js настраивает силу true и определяет путь - здесь нет проблемы. Это должно сработать.

Я бы предложил бросить некоторые команды, чтобы проверить папки и файлы на Travis.

  • - sudo ls -alh /home/travis/build/mistic100/jQuery-QueryBuilder/*
  • - sudo ls -alh /home/travis/build/mistic100/jQuery-QueryBuilder/.coverage-results/*

Может быть, вы заметили проблему разрешения во время папки и создания файла. Но это мое единственное предположение.

+1

https://travis-ci.org/mistic100/jQuery-QueryBuilder#L389 папка здесь, но не файл. Возможно, 'fs.appendFileSync' не может создать файл, я постараюсь дотронуться до него заранее. – Mistic

+0

Таким образом, проблема в самом деле 'fs.appendFileSync', которая не может получить доступ к файлу, я добавил« grunt.file.write »с пустым контентом, и файл остается пустым. – Mistic

Смежные вопросы