16

rhino-mocks stub と expect ここの違いは何ですか: まったく同じように動作するように見えますか?

mockContext.Stub(x => x.Find<Blog>())
    .Return(new List<Blog>() 
    { 
        new Blog() { Id = 1, Title = "Test" } 
    }.AsQueryable());

mockContext.Expect(x => x.Find<Blog>())
    .Return(new List<Blog>()
    {
        new Blog(){Id = 1,Title = "Title"},
        new Blog(){Id=2,Title = "no"}
    }.AsQueryable());
4

2 に答える 2

20

Stub()スタブ オブジェクトの動作を定義します。モックされたオブジェクトの動作期待
Expect()を定義します。

したがって、モックされたメソッドが呼び出されたことを確認する必要がある場合は、次を使用する必要がありますExpect

var mockContext = MockRepository.GenerateMock<IContext>();
mockContext.Expect(x => x.Find<Blog>()).Return(new List<Blog>());

テスト アクションが完了したら、期待どおりであることを確認できます。

mockContext.VerifyAllExpectations();

メソッドの動作をスタブする必要がある場合は、次を使用できますStub()

var mockContext = MockRepository.GenerateStub<IContext>();
mockContext.Stub(x => x.Find<Blog>()).Return(new List<Blog>());
于 2012-12-02T09:12:38.260 に答える