AutoFixture的类型自定义未被调用。
创始人
2024-11-12 13:30:32
0

AutoFixture 是一个用于生成测试数据的库,可以帮助减少手动编写测试数据的工作量。在使用 AutoFixture 时,有时候需要对某些特定类型进行自定义,但是发现自定义并未生效。

以下是解决该问题的一种方法:

  1. 创建一个自定义的 Fixture,继承自 AutoFixture 的 DefaultFixture 类。
public class CustomFixture : DefaultFixture
{
    public CustomFixture()
    {
        Customize(new MyCustomization());
    }
}
  1. 创建一个自定义的 SpecimenBuilder,实现 ISpecimenBuilder 接口,用于对特定类型进行自定义。
public class MyCustomization : ISpecimenBuilder
{
    public object Create(object request, ISpecimenContext context)
    {
        var type = request as Type;
        if (type != null && type == typeof(MyCustomType))
        {
            // 在这里进行自定义操作,例如返回一个特定的实例
            return new MyCustomType("Custom data");
        }

        return new NoSpecimen();
    }
}
  1. 使用自定义的 Fixture 来生成测试数据。
var fixture = new CustomFixture();
var myCustomType = fixture.Create();

在上述代码中,自定义的 Fixture 类 CustomFixture 继承自 DefaultFixture,并在构造函数中调用 Customize 方法,将 MyCustomization 类传递给它。MyCustomization 类实现了 ISpecimenBuilder 接口,在 Create 方法中对特定类型进行自定义操作。

通过以上的自定义 Fixture 和 SpecimenBuilder,就可以解决 AutoFixture 的类型自定义未被调用的问题。

相关内容

热门资讯

今日头条!wepoke辅助挂,... 今日头条!wepoke辅助挂,wepoke辅助插件,新2025版(其实是真的有挂)您好,wepoke...
一分钟了解!德州软件辅助,微扑... 一分钟了解!德州软件辅助,微扑克ai辅助器苹果版,曝光教程(果然存在有挂)1、在微扑克ai辅助器苹果...
今日头条!线上wpk德州ai机... 今日头条!线上wpk德州ai机器人,德扑ai助手,2025新版技巧(往昔存在有挂)1.德州ai机器人...
每日必看教程!wepoke科技... 每日必看教程!wepoke科技,微扑克辅助器ios,详细教程(从来是真的有挂);人气非常高,ai更新...
技巧知识分享!微扑克wpk真的... 技巧知识分享!微扑克wpk真的有辅助吗,wepoke有挂,介绍教程(最初真的是有挂)(1)技巧知识分...
重要通知!aapoker怎么设... 您好,wpk透明挂这款游戏可以开挂的,确实是有挂的,需要了解加微【136704302】很多玩家在这款...
玩家必看秘籍!wepoke真的... 玩家必看秘籍!wepoke真的有挂吗,智星德州菠萝有挂吗,曝光教程(本然有挂);是一款可以让一直输的...
揭秘攻略!aapoker ai... 揭秘攻略!aapoker ai软件,微扑克辅助挂,透明挂教程(切实存在有挂)1)微扑克辅助挂辅助挂:...
一分钟了解!wepkoe有外挂... 一分钟了解!wepkoe有外挂么,wepoke辅助插件,2025新版总结(一直真的是有挂)1、不需要...
重磅来袭!微扑克发牌算法,微扑... 重磅来袭!微扑克发牌算法,微扑克ai辅助工具,高科技教程(一向真的有挂)是一款可以让一直输的玩家,快...