2010-12-15 16 views
1

キュウリの延長であるarubaの宝石を取り付けました。これは、Railsのジェネレータのようなコマンドラインアプリケーションをテストすることを可能にします(ただし、ドキュメントで指摘されているように、任意のcmdアプリケーション用に使用できます)。Arubaキュウリ試験(ruby1.9.2)

私はthis pivotal labs articleに次のように従っていますが、何らかの理由で最初のステップを過ぎていません。最初のステップは緑色(アプリケーションの作成)ですが、次のステップはcd test_app、それを見つけて失敗する。

Given I run "rails new test_app"      # features/step_definitions/aruba_steps.rb:95 
And I cd to "test_app"         # features/step_definitions/aruba_steps.rb:91 
    tmp/aruba/test_app is not a directory. (RuntimeError) 
    ./features/step_definitions/aruba_steps.rb:92:in `/^I cd to "([^"]*)"$/' 
    features/generators.feature:9:in `And I cd to "test_app"' 

ベースディレクトリに探して、私はある折りたたみを/ tmp /アルバを見ることができますが、アプリケーションフォルダが実際に作成されていないように思われます。ソースをたどり着いた後、私はなぜか何かを考え出すことができません。 他に誰もこの宝石で何か経験があり、同じことを見つけましたか?

ジェネレータやレーキタスクのテストなど、BDDの代替案はありますか? Ryansにさらに

は答える:

を私はfeatures/support/env.rbに以下を追加したら(ベースレールのディレクトリから作業):

Before do 
    @dirs = [File.expand_path(File.dirname(__FILE__) + '/../../../aruba_test_dir')] 
end 

だからキュウリは、現在の外のアプリを構築していますrails appでは、これで問題は解決されます。

答えて

2

私の最初の考え:Railsがあなたのバンドルの中になかったなら、これは何が原因だろうと思います。しかし、あなたはスマートな人のように思えるので、私はあなたの例を複製してみて、同じことを見つけました。

Scenario: title 
    Given I run "rails new test_app" 
    Then the output should contain: 
    """ 
     app/mailers 
    """ 
    And I cd to "test_app" 

それは単に出力は、このプロセスの動作ことアプリ/メーラーが含まれていることをを観察することによって判明:

困惑は、私は出力を得ていたことを確認しました。それは非常に量子で、おそらくアルバやRailsのバグです。どちらが分からないのか分かりません。

+0

D **波動関数。ありがとう! – scaney

関連する問題