AutoFixture:如何在没有前缀的情况下创建属性值?
创始人
2024-11-12 14:00:25
0

可以使用AutoDataAttribute和InlineAutoDataAttribute特性来解决这个问题。这些特性允许您使用AutoFixture来生成参数值。

示例代码:

public class MyClass
{
    public int Id { get; set; }
    public string Name { get; set; }
}

public class MyTest
{
    [Theory, AutoData]
    public void MyMethod_ShouldCreateInstanceWithoutPrefix(MyClass obj)
    {
        // Assert
        Assert.NotNull(obj);
        Assert.NotEqual(default(int), obj.Id);
        Assert.NotNull(obj.Name);
    }

    [Theory, InlineAutoData(100, "John")]
    public void MyMethod_ShouldCreateInstanceWithoutPrefix_WithSpecificValues(int id, string name, MyClass obj)
    {
        // Arrange
        obj.Id = id;
        obj.Name = name;

        // Assert
        Assert.NotNull(obj);
        Assert.Equal(id, obj.Id);
        Assert.Equal(name, obj.Name);
    }
}

在上面的代码中,用AutoDataAttribute标记的方法将根据参数类型自动生成参数值。这意味着如果MyClass类具有其他属性,AutoFixture将为它们创建属性值。

但是,如果您希望指定参数值,可以使用InlineAutoDataAttribute,并通过添加参数来指定它们。在这种情况下,AutoFixture将忽略未提供的属性。

这两种方法可以用于解决创建没有前缀的属性值的问题。

相关内容

热门资讯

德扑之星记牌器!德州扑克aa扑... 德扑之星记牌器!德州扑克aa扑克平台,pokerist有挂吗,透明挂教程(一向有挂);1分钟了解详细...
黑科技科技!(wePokE)软... 黑科技科技!(wePokE)软件透明挂,(WePoKer)竟然是有挂,wpk教程(有挂技巧);原来确...
aapoker挂!微扑克挂几个... aapoker挂!微扑克挂几个号,扑克王辅助工具,2025新版技巧(果然是真的有挂);1分钟了解详细...
黑科技辅助挂!(Wpk)透视辅... 黑科技辅助挂!(Wpk)透视辅助挂,(WPk)一直存在有挂,必备教程(有挂方法);支持多人共享记分板...
wepoke辅助有挂吗!微扑克... wepoke辅助有挂吗!微扑克可以用模拟器,aapoker是什么软件,透视教程(从来是有挂)这是由厦...
黑科技数据!(德州)外挂辅助软... 黑科技数据!(德州)外挂辅助软件,(德州ai)本来真的是有挂,黑科技教程(有挂透视);支持多人共享记...
wpk有伙牌吗!wpk俱乐部软... wpk有伙牌吗!wpk俱乐部软件,扑克世界牌局设置,AA德州教程(素来有挂);大神普及一款德州ai内...
黑科技能赢!(WepoKe)软... 黑科技能赢!(WepoKe)软件透明挂,(wePoke)一直真的有挂,揭秘攻略(有挂透视)是由北京得...
aapoker透明挂下载!德州... aapoker透明挂下载!德州wpk到底有没有外挂,wepoke挂透视,分享教程(固有存在有挂);小...
黑科技好友!(aaPoker)... 黑科技好友!(aaPoker)透明挂辅助app,(AAPOKer)好像有挂,玩家教你(有挂技巧)这是...