我是AutoFixture的新手并快速测试其功能,但我遇到了一些麻烦。以下是我的测试:
// Arrange
Fixture.Register(() => Fixture.CreateMany<SyncItemChange>(10));
var syncFolderItemsResult = Fixture.CreateAnonymous<SyncFolderItemsResult>();
ExchangeWebServiceMock
.Setup(x => x.Sync())
.Returns(() => syncFolderItemsResult);
// Act
Listener.Begin();
// Assert
var expectedItemIdsToBind = syncFolderItemsResult
.ItemChanges
.Select(x => x.ItemId);
ExchangeWebServiceMock.Verify(x => x.BindToItems(expectedItemIdsToBind), Times.Once());
没什么特别的。我遇到的问题是,当我第一次创建SyncFolderItemsResult
的匿名实例时,SyncItemsChanges
从我创建它到我断言我绑定的时间不一样适当的ItemId
。因此,使测试失败。
为什么我会生成2个不同的列表?