2011-09-01 2 views
2

Je rencontre des problèmes lors de l'exécution de tests rspec via cron. J'utilise le sélénium pour accéder à Firefox et tester la journalisation dans une page. Tous mes fichiers fonctionnent correctement lorsqu'ils sont exécutés en dehors de cron. D'après ce que j'ai lu, le problème pourrait être que cron a besoin d'un environnement d'affichage pour exécuter des programmes comme firefox. C'est où je suis coincé, comment puis-je configurer un environnement d'affichage pour le démarrage de Firefox à partir de cron.Comment exécuter des tests rspec en utilisant du sélénium via cron

J'ai essayé de placer l'écran une des deux manières dans le crontab ..

*/25 * * * * /home/justin/test.sh --display=:0 > testlog 

*/25 * * * * DISPLAY=:0; /home/justin/test.sh > testlog; 

J'ai aussi tenté de mettre dans le script ..

#!/bin/sh 

cd /home/justin/widget_ui_testing/ 

DISPLAY=:0 

/home/justin/.rvm/bin/rvm exec /home/justin/.rvm/gems/ruby-1.9.2-p290/bin/rspec 
-fdoc /home/justin/widget_ui_testing/spec/requests/log_in_spec.rb 

Le message d'erreur je garde S'y rendre est

Selenium::WebDriver::Error::WebDriverError: 
unable to obtain stable firefox connection in 60 seconds (127.0.0.1:7055) 
# ./spec/requests/log_in_spec.rb:22:in `block (2 levels) in <top (required)>' 

Je me demande s'il y a un moyen de changer le code de sélénium pour fonctionner avec Firefox une spécification affichage fié. Ou si j'ai raté quelque chose en cours de route. Toute aide serait très appréciée.

Répondre

3

Vous devez d'abord démarrer Xvfb. Je vous recommande d'utiliser la gemme headless qui simplifie l'interaction avec Xvfb. Jetez également un coup d'oeil dans readme il a des cas d'utilisation similaires.

Jetez également un coup d'oeil dans ce blog post sur la mise en place de Jenkins et sans tête.

P.S: Juste une suggestion - n'utilisez pas cron pour un tel outil d'utilisation CI. Je recommande Jenkins CI il peut faire des constructions à la fois en interrogeant SCM et périodiquement (votre cas d'utilisation exact).

Questions connexes