2010-09-01 43 views
1

運行的是$自動測試或$自動測試-f給出了相同的結果:自動測試ubuntu上什麼都不做

#等待,因爲[時間戳]

更改控制器或spec文件只是得到該行重複(用較新的時間戳)。如果我嘗試使用$ autotest -v,它不包含沒有測試匹配的文件列表中的規範或控制器,我認爲這很好;但它不會顯示除#waiting行之外的其他任何內容。

如果我在運行-v時對規格或控制器進行了更改,則輸出是使用{[path/to/changed/file] => [timestamp]}重複兩次的散列值。

這是Ubuntu 9.04,Ruby 1.9.2,Rails 3,autotest 4.3.2,autotest-rails 4.1.0和rspec 2.0.0.beta.20。 (我也應該說rspec/spec對自己的工作很好。)任何想法?

回答

0

我有完全相同的環境,除了Windows而不是Ubuntu。我有同樣的問題。我確定它不是實際使用rails_app /自動測試/ discover.rb我的設置是這樣的(試圖改變順序,沒有關係,增加輸出語句,他們從來沒有得到執行。):

Autotest.add_discovery { "rspec2" } 
Autotest.add_discovery { "rails" } 

我發現解決方案:在我的Gemfile

用於捆綁我已經指定ZenTest,並且換出來的這些美女需要(自動測試護欄取決於ZenTest,但是這一切都不同):

gem 'autotest' 
gem 'autotest-rails' 

而且現在它起作用了(差不多,但至少現在我有一個無關的'Windowsy'問題EM)。我認爲這會幫助你!

好吧autotest,仍然不起作用,但bundle exec autotest呢,這就夠了!

+0

唉,那不是我的。我在Gemfile中進行了「自動測試」,添加「autotest-rails」讓我得到了一個錯誤,這個錯誤與我使用mynyml-redgreen gem而不是redgreen相關。雖然謝謝! – bgates 2010-09-02 01:51:42

+0

「autotest」+「autotest-rails-pure」適用於我。 – 2010-10-04 23:03:50

+0

紅色的寶石(所有味道)應該從RSpec2中取出,因爲它是自己的着色。這可能是你的問題。我讀過其他人有這個問題的人。 RSpec2着色解釋在這個維基的底部:http://github.com/dchelimsky/rspec/wiki/autotest-integration 現在我看到你已經解決它在你自己的。真的,拿出紅綠。 :) – 2010-10-15 12:07:36

2

啊哈!我是在做rvm的第一個實驗的一部分,但我把ZenTest作爲/ usr/lib/ruby​​中的gem。即使在我將'rvm use ___'設置爲我想要的gemset(具有自動測試和自動測試導軌的純gemset)之後,命令'autotest'仍然在/ usr/bin/autotest中選取文件,即較舊的ZenTest已經到位。因此,對於跟隨railstutorial.org的任何人 - 確保您沒有使用pre-rvm(或從sudo gem安裝)中的寶石,它們將文件保留在您不期望的位置。

對我來說,'sudo gem uninstall ZenTest'竟然可以做到這一點。

0

我的問題是通過添加以下到我的自動測試/ discover.rb文件解決:

 
Autotest.add_discovery { "rails" } 
Autotest.add_discovery { "rspec2" } 

Autotest.add_hook(:initialize) do |at| 
    at.add_mapping(%r%^(models|controllers|routing|views|helpers|mailers|requests|lib)/.*rb$%)  do |filename, _| 
    filename 
    end 
end 

這將迫使自動測試加載的所有文件和正確觸發您的規格當您保存更改爲一個應用程序文件或規格文件。

我在這裏博客了:http://itshouldbeuseful.wordpress.com/2011/03/08/force-autotest-to-load-all-your-application-files/