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

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

相关内容

热门资讯

透视透视挂!约局吧透视挂下载,... 透视透视挂!约局吧透视挂下载,pokemmo手机脚本辅助器,技巧教程(有挂解密)1、构建自己的pok...
透视总结!德普之星辅助工具如何... 透视总结!德普之星辅助工具如何设置,德普之星怎么开辅助,必胜教程(有挂脚本);1、全新机制【德普之星...
透视工具!newpoker脚本... 透视工具!newpoker脚本,epoker透视,微扑克教程(有挂黑科技)1、上手简单,内置详细流程...
透视透视!德普之星透视辅助插件... 透视透视!德普之星透视辅助插件,德普之星私人局辅助免费,高科技教程(有挂详情);1、许多玩家不知道德...
透视真的“拱趴大菠萝怎么开挂”... 透视真的“拱趴大菠萝怎么开挂”透视辅助安装(原来有挂);拱趴大菠萝怎么开挂辅助器中分为三种模型:拱趴...
透视有挂!德普软件,(德扑之心... 透视有挂!德普软件,(德扑之心)切实有挂,新2025版(有挂规律)1、德普软件ai辅助优化,德普软件...
透视挂!newpoker脚本,... 透视挂!newpoker脚本,德州局透视脚本下载安装最新版本,力荐教程(有挂工具);1、打开软件启动...
透视模拟器!德普之星私人局辅助... 透视模拟器!德普之星私人局辅助免费,德扑圈透视挂,德州教程(有挂脚本)1、德普之星私人局辅助免费系统...
透视模拟器“newpoker怎... 透视模拟器“newpoker怎么安装脚本”透视辅助机制(果然存在有挂)1、newpoker怎么安装脚...
透视软件!德扑圈有透视吗,(德... 透视软件!德扑圈有透视吗,(德普)确实存在有挂,规律教程(有挂教程)德扑圈有透视吗辅助器中分为三种模...