2

指定された値以下のタグを使用してすべての例を実行できるように、Rspec2 タグ内に条件付きロジックを含めることは可能ですか?

何かのようなもの:

  rspec Dummy_spec.rb --tag version:= <=2

明らかに、これは機能しませんが、これを機能させる Ruby の魔法はありますか?

そうする理由は、タグを使用して Rspec の例をバージョン管理したいからです。より具体的には、例を実行するときに指定したタグ値以下のタグを持つすべての例をフィルタリングできるようにしたいと考えています。

たとえば、コードのバージョン 2 に取り組んでいるが、バージョン 3 でジャンプ スタートを取得している場合、コードのバージョン 1 とバージョン 2 に適用できるすべての例を実行できるようにしたいと考えています。バージョン 3 ではありません (以下のコード例を参照)。

いくつかの返信を見越して、私の rspec の例は私の製品コードとは別のプロジェクトにあるため、コードで例をバージョン管理するのは簡単なことではありません。しかし、これを処理するためのより良い方法があれば、私は代替案を受け入れます.

私がやりたいことの完全な例:

describe "using version as tags" do

  context "When I run 'rspec Dummy_spec.rb --tag version:2'"

  it "should run this test applicable to ver 1", :version =>1 do
    true.should eq(true)
  end

  it "should run this test applicable to ver 2", :version =>2 do
    true.should eq(true)
  end

  it "should not run this test applicable to ver 3", :version =>3 do
    true.should eq(true)
  end

end
4

1 に答える 1

0

--tag オプションのRelish ページでは、を介してタグを除外できると説明されているため、バージョン 3 テスト以外のすべてを~key:value実行できるはずです。rspec Dummy_spec.rb --tag ~version:3

于 2012-06-03T16:21:24.463 に答える