2011-09-14 12 views
14

¿Alguien sabe de una forma de hacer pruebas de integración continua con Ruby on Rails con Jenkins?Prueba de integración continua para Ruby on Rails con Jenkins

He seguido Rspec para escribir casos de prueba en la aplicación ROR.

Necesito integrar el proceso de prueba con jenkins CI.

Si pudieras proporcionar alguna sugerencia, realmente te agradecería.

Respuesta

15

Sí, puedes. Configure Jenkins, asegúrese de que Ruby esté instalado en su sistema (incluido RVM, bundler, mysql y cualquier otra cosa que necesite).

A continuación, cree un trabajo con estos comandos de compilación;

#!/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 

Para pepino

#!/bin/bash 
source ~/.profile 
rvm use [email protected]_app 

bundle exec rake cucumber 

Para RSpec

#!/bin/bash 
source ~/.profile 
rvm use [email protected]_app 

bundle exec rake spec 
17

Desde Jenkins puede ejecutar cualquier cosa en la línea de comandos, la parte importante es permitir que Jenkins para interpretar la salida de prueba.

Básicamente lo que necesita es esta joya:

https://github.com/nicksieger/ci_reporter

El CI Reportero joya es la salida Test :: Unidad y resultados de las pruebas RSpec como un archivo XML compatible con JUnit, que Jenkins puede interpretar. Creo que esta es la clave de la integración.

+0

No tengo idea de por qué esta no es la respuesta aceptada. Tal vez OP no se preocupa por los resultados de las pruebas. – cbmanica

+1

gist es un enlace muerto –

+0

Gracias @FabioRos. No era realmente necesario, así que lo eliminé. – brendan