2013-04-08 13 views
5

Ho un ambiente personalizzato chiamato "report" che è configurato per colpire un database slave. Sto cercando di configurare alcuni lavori cron usando la gemma Whenever e voglio testarli in fase di sviluppo prima della distribuzione. C'è un modo per testare i lavori cron in fase di sviluppo? Posso comunque programmarli localmente e quindi avviare il mio server di report e vedere se corrono? Grazie!Rails: test dei job Cron nell'ambiente di sviluppo

risposta

3

Vorrei iniziare esaminando come la gemma stessa (ogni volta che gemma) sta conducendo i test. Questo è un estratto da uno dei their functional test:

context "weekday at a (single) given time" do 
    setup do 
     @output = Whenever.cron \ 
     <<-file 
     set :job_template, nil 
     every "weekday", :at => '5:02am' do 
      command "blahblah" 
     end 
     file 
    end 

    should "output the command using that time" do 
     assert_match '2 5 * * 1-5 blahblah', @output 
    end 
    end 
+0

L'unico problema con questo modo di fare che è che non si sta veramente usando il codice a 'schedule.rb', quindi se si modifica il' schedule.rb 'codice, i test continueranno a passare e l'output cron generato potrebbe non essere corretto –