Тестирование непрерывной интеграции для Ruby on Rails с Jenkins
Кто-нибудь знает, как провести непрерывное интеграционное тестирование с Ruby on Rails с Jenkins?
Я последовал за Rspec для написания тестовых примеров в приложении ROR.
Мне нужно интегрировать тестовый процесс с jenkins CI.
Если бы вы могли предоставить какие-либо указатели, я действительно был бы признателен.
Ответы
Ответ 1
Поскольку Jenkins может запускать что-либо в командной строке, важная часть позволяет Jenkins интерпретировать тестовый результат.
В основном вам нужен этот камень:
https://github.com/nicksieger/ci_reporter
CI Reporter gem выведет результаты теста Test:: Unit и RSpec в виде JUnit-совместимого XML файла, который может интерпретировать Дженкинс. Я считаю, что это ключ к интеграции.
Ответ 2
Да, вы можете. Установите Jenkins, убедитесь, что Ruby установлен в вашей системе (включая RVM, bundler, mysql и все, что вам нужно).
Затем создайте задание с этими командами сборки;
#!/bin/bash
source ~/.profile
rvm use --create [email protected]_app
rvm --force gemset empty
gem install bundler --no-rdoc --no-ri
bundle install
cp config/database.yml.jenkins config/database.yml
bundle exec rake db:create:all
bundle exec rake db:migrate
bundle exec rake db:test:prepare
Для огурца
#!/bin/bash
source ~/.profile
rvm use [email protected]_app
bundle exec rake cucumber
Для RSpec
#!/bin/bash
source ~/.profile
rvm use [email protected]_app
bundle exec rake spec