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

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

相关内容

热门资讯

重大消息!蜀山四川vip破解,... 重大消息!蜀山四川vip破解,微乐江西小程序辅助器,详细工具(有挂透视)1、操作简单,无需微乐江西小...
六分钟了解!518互游辅助器下... 六分钟了解!518互游辅助器下载,顺兴茶楼开挂,详细app(有挂存在)1、518互游辅助器下载免费脚...
必备攻略!微信小游戏万能修改器... 必备攻略!微信小游戏万能修改器,朋友局app辅助器下载,详细app(真是有挂)该软件可以轻松地帮助玩...
一分钟揭秘!微信微乐游戏辅助脚... 一分钟揭秘!微信微乐游戏辅助脚本,山城九九辅助,详细软件(有挂解密)1、金币登录送、破产送、升级送、...
今日焦点!玖玖互娱辅助工具,佛... 今日焦点!玖玖互娱辅助工具,佛手大菠萝破解版ios,详细攻略(有挂分享)1、下载好佛手大菠萝破解版i...
一分钟揭秘!奇迹免费脚本辅助工... 一分钟揭秘!奇迹免费脚本辅助工具,腾讯欢乐卡五星辅助器,详细脚本(有挂详情)1、腾讯欢乐卡五星辅助器...
研究成果!雀友会广东潮汕bus... 研究成果!雀友会广东潮汕bus,九哥玩挂,详细插件(有挂头条)1、完成雀友会广东潮汕bus有辅助插件...
热门推荐!上饶辅助设备出租,河... 热门推荐!上饶辅助设备出租,河南微乐小程序辅助器免费,详细插件(有挂详情)1、河南微乐小程序辅助器免...
终于清楚!多乐游戏脚本,微信中... 终于清楚!多乐游戏脚本,微信中至有辅助吗,详细攻略(有挂方法)1、任何微信中至有辅助吗透视是真的假的...
分享个大家!德州扑克游戏辅助器... 分享个大家!德州扑克游戏辅助器,凑一桌游戏软件下载辅助,详细器(有挂细节)1、超多福利:超高返利,海...