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

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

相关内容

热门资讯

WPK方法阶段!wepoker... WPK方法阶段!wepoker透视挂底牌,德州微扑克本来是有透视挂app1、wepoker透视挂底牌...
WPK工具机巧!wepoker... WPK工具机巧!wepoker私人局辅助器怎么用,德州微扑克确实真的有开挂方法1、每一步都需要思考,...
WPK官网经验!wejoker... WPK官网经验!wejoker手机版透视脚本,德州微扑克确实是真的有透视挂神器1、该软件可以轻松地帮...
WPK控制牌法门!wepoke... WPK控制牌法门!wepoker轻量版透视系统,德州微扑克好像有辅助器软件所有人都在同一条线上,像星...
WPK安卓演示!wepoker... WPK安卓演示!wepokerplus到底是挂了吗,德州微扑克一直存在有辅助器方法1、上手简单,内置...
WPK脚本方针!wepoker... WPK脚本方针!wepoker免费钻石,德州微扑克切实存在有辅助器脚本1、全新机制【wepoker免...
WPK透视烘培!wepoker... WPK透视烘培!wepoker底牌透视脚本,德州微扑克本来存在有透视工具1、这是跨平台的wepoke...
WPK德州局方式!wpk脚本辅... WPK德州局方式!wpk脚本辅助器,德州微扑克切实是有辅助软件1、超多福利:超高返利,海量正版游戏,...
WPK控制牌秘籍!wepoke... WPK控制牌秘籍!wepoker透视脚本,德州微扑克确实是真的有辅助器攻略wepoker透视脚本脚本...
WPK控制牌教程书!wepok... WPK控制牌教程书!wepoker怎么提高运气,德州微扑克竟然是真的有辅助器技巧1、进入游戏-大厅左...