簡體   English   中英

AutoFixture:如何創建沒有前綴的屬性值

[英]AutoFixture: how to create property's value without prefix

對於我的測試,我需要讓 Name 屬性只包含一個沒有前綴屬性名稱的 Guid 表示。 我嘗試使用 FromFactory 方法解決(請參閱代碼中的注釋)但沒有成功。

private class A
{
    public string Name { get; set; } = null!;
}

[Fact]
public void Test()
{
    Fixture fixture = new();
    // var a = fixture.Build<A>().FromFactory(() => new() { Name = Guid.NewGuid().ToString() }).Create<A>();
    var a = fixture.Create<A>();
    a.Name.Should().NotStartWith("Name");
}

首先,您需要自定義:

fixture.Customize<A>(c => c.With(x => x.Name, Guid.NewGuid().ToString()));

然后,只需創建:

var myMarvelousVariable = fixture.Create<A>();

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM