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

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

相关内容

热门资讯

今年以来!wepoker透视脚... 您好,wepoker透视脚本苹果版这款游戏可以开挂的,确实是有挂的,需要了解加去威信【4852750...
来临!wepoker模拟器哪个... 来临!wepoker模拟器哪个,wepoker透视脚本免费,妙计教程(有挂工具)1、每一步都需要思考...
黑科技技巧!pokemmo手机... 黑科技技巧!pokemmo手机版透视脚本,poker红龙辅助,步骤教程(存在有挂)一、pokemmo...
目前!线上德州的辅助器是什么,... 目前!线上德州的辅助器是什么,wepoker怎么设置盖牌,步骤教程(有挂分享)1、线上德州的辅助器是...
此事迅速冲上热搜!wepoke... 此事迅速冲上热搜!wepokerplus透视脚本免费,hh poker插件下载,技法教程(有挂技术)...
2026版方法!pokemmo... 2026版方法!pokemmo辅助器脚本下载,德州局HHpoker透视脚本,学习教程(了解有挂)1、...
经调查!智星德州可以透视吗,w... 经调查!智星德州可以透视吗,wpk有作弊吗,法子教程(确实有挂)1、智星德州可以透视吗有没有辅助教程...
备受关注的!wepoker代打... 备受关注的!wepoker代打辅助机器人,epoker透视底牌,机巧教程(有挂猫腻)1、超多福利:超...
围绕透视问题!wepokerp... 围绕透视问题!wepokerplus透视脚本免费,hh poker辅助器先试用,妙计教程(真实有挂)...
现就发布提示!拱趴大菠萝挂怎么... 现就发布提示!拱趴大菠萝挂怎么安装,wepoker祈福有用吗,指南书教程(有挂工具)拱趴大菠萝挂怎么...