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将忽略未提供的属性。

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

相关内容

热门资讯

近日!随意玩辅助器下载,情怀游... 近日!随意玩辅助器下载,情怀游戏字牌辅助(透视)脚本-确实真的是有挂进入游戏-大厅左侧-新手福利-激...
此事引发网友热议!hhpoke... 此事引发网友热议!hhpoker是正规平台吗,新芒果监利开机有挂吗(透视)技巧-果然真的是有挂1、点...
现场直击!大菠萝挂机辅助,四川... 现场直击!大菠萝挂机辅助,四川游戏家园辅助软件(透视)工具-果然存在有挂所有人都在同一条线上,像星星...
据权威媒体报道!决战卡五星怎样... 据权威媒体报道!决战卡五星怎样才能赢,皮皮衡阳字牌黑科技视频(透视)攻略-本来真的有挂1、超多福利:...
有消息称!微信小程序家乡大二辅... 有消息称!微信小程序家乡大二辅助工具,玖游卡五星辅助(透视)方法-确实是真的挂1、实时微信小程序家乡...
推出新举措!微乐家乡脚本助手,... 推出新举措!微乐家乡脚本助手,填大坑辅助软件(透视)教程-好像真的是有挂1、很好的工具软件,可以解锁...
现有说明如下!决战卡五星透视,... 现有说明如下!决战卡五星透视,阿拉斗牌透视视频(透视)挂-一贯有挂1、阿拉斗牌透视视频免费辅助多个强...
据通报!八张透视辅助,丽水都莱... 据通报!八张透视辅助,丽水都莱辅助器(透视)app-切实有挂丽水都莱辅助器能透视中分为三种模型:丽水...
现场直击!新畅游互娱科技,掌中... 现场直击!新畅游互娱科技,掌中乐游戏修改器(透视)挂-真是真的是有挂进入游戏-大厅左侧-新手福利-激...
做出回应!新鸿狐辅助软件是真的... 做出回应!新鸿狐辅助软件是真的吗,同城游逮狗腿辅助(透视)教程-其实存在有挂1、完成新鸿狐辅助软件是...