Непрерывная интеграция (Hudson / Jenkins) и R-программирование - PullRequest
23 голосов
/ 10 августа 2011

Кто-нибудь знает способ непрерывной интеграции с R-программированием? Мне известны такие инструменты, как пакет svUnit для выполнения модульных тестов, но кто-нибудь пробовал запускать их с Hudson / Jenkins?

Ответы [ 3 ]

12 голосов
/ 10 августа 2011

Я не вижу особых проблем.Эти вещи, как правило, имеют сценарий , поэтому могут просто

  • указывать на верх вашего репозитория
  • N минут после каждой проверки, циклнад исходными каталогами
  • вызывайте R CMD check на каждом
  • ваш пакет должен быть настроен на использование модульного теста, для которого вы можете использовать
    • RUnit который является начальным модульным тестированием для R;он широко используется
    • testthat , который является более новым пакетом Хэдли, и используется многими его пакетами
    • svUnit Филиппом, который AFAIK никогдазавоевал столько же, сколько и два других.

Это ничем не отличается от непрерывной интеграции со скомпилированными языками.Ваш вопрос действительно о том, как выполнить модульное тестирование в R, и этот вопрос уже рассматривался.

5 голосов
/ 07 мая 2012

в офисе мы уже давно используем Hudson / Jenkins. Я внес интеграцию svUnit в Jenkins , поэтому я настоятельно рекомендую вам использовать svUnit, прежде чем пытаться что-либо еще.

взгляните на две библиотеки, которые я поддерживаю: ведение журнала и delftfews или на себя, пытающуюся следовать zoo и распространять его на github .

Я не занимался домашним хозяйством в последнее время, поэтому три сценария (в zoo , logging , delftfews ) все немного отличаются. тот в моей версии зоопарка остановится, если любой тест не пройден. это практично, если вы используете R CMD check, но, вероятно, не очень хорошая идея для непрерывной интеграции.

1 голос
/ 12 апреля 2012

Хадсон / Дженкинс поддерживает запуск сценариев bash.Я думаю, что вы можете использовать это как вход в ваш мир R.В R простой способ сохранить результат - использовать приемник («toYourFile.txt»), а затем использовать функцию отображения результатов CI для отображения toYourFile.txt.

...