2013-04-08 8 views
5

Ich habe eine benutzerdefinierte Umgebung namens "Berichte", die eingerichtet ist, um eine Slave-Datenbank zu treffen. Ich versuche, einige Cron-Jobs mit dem Whenever Juwel zu konfigurieren und möchte sie vor der Bereitstellung in der Entwicklung testen. Gibt es eine Möglichkeit, Cron-Jobs in der Entwicklung zu testen? Kann ich sie trotzdem lokal einplanen und dann meinen Berichtsserver starten und sehen, ob sie laufen? Danke!Rails: Testen Cron-Jobs in der Entwicklungsumgebung

Antwort

3

Ich würde beginnen, indem Sie überprüfen, wie der Edelstein selbst (wann immer gem) ihre Tests durchführt. Dies ist ein Auszug aus einem der 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

Das einzige Problem mit dieser Art und Weise, dies zu tun, ist, dass Sie nicht wirklich den Code auf 'schedule.rb' verwenden, wenn Sie also die' schedule.rb ändern 'Code, die Tests werden immer noch übergeben und die generierte Cron-Ausgabe möglicherweise falsch –