2011-11-16 18 views
0

私のrspecテストの各例に一意の識別子を生成する方法を理解する助けが必要です。以下のコードを変更するにはどうすればよいですか?あなたのRSpecの中rspecでの例IDの生成

describe 'Verify that my server' do 

    @x = 1 

    it "does something " + @x.to_s do 
     2.should==2 
    end 

    it "does something else " + @x.to_s do 
     2.should==2 
    end 

    after(:each) do 
     @x+=1 
    end 
end 
+0

あなたのルビーコードを書式設定したstackoverflow;)あなたの質問にあなたのコードを貼り付け、それを選択してctrl + K(またはMac OSではCMD + k)を押してください – d11wtq

答えて

0

各例文、あなたは通常、関連するテストをカプセル化describeブロックで開始した文を完了する必要があります。

私は私自身のスペックの一つからこれを取った:あなたが好きな文章で終わる

describe Redis::BigHash do 
    before :each do 
    @hash = Redis::BigHash.new 
    @hash[:foo] = "bar" 
    @hash[:yin] = "yang" 
    end 

    describe "#[]" do 
    it "should read an existing value" do 
     @hash[:foo].should == "bar" 
    end 
    it "should get nil for a value that doesn't exist" do 
     @hash[:bad_key].should be_nil 
    end 
    it "should allow lookup of multiple keys, returning an array" do 
     @hash[:foo, :yin, :bad_key].should == ["bar", "yang", nil] 
    end 
    end 
end 

  • Redis::BigHash#[]は、既存の値をお読みください。
  • Redis::BigHash#[]は、存在しない値に対してnilを取得する必要があります。
  • Redis::BigHash#[]は、複数のキーの検索を許可し、配列を返します。

あなたが望む動作を説明する単純な英語の文章です。

+1

フレンドリーニットピック、 "should"を省略すると、例えば: 'Redis :: BigHash#[]は既存の値を読み込みます'。私は指定された動作ではなく、仮説的な動作を知りたい – d11wtq

2

ffakerを見て、テストでランダムな値を生成してください。電子メールアドレス、IPアドレス、電話番号、人名などの実際のランダムデータを生成できますが、文字と数字のランダムな文字列を生成するための基本的な方法もあります。

Faker.numerify("###-###-###") 
# => 123-456-789 

また、stdlibのSecureRandomを使用することもできます。

関連する問題