xUnit 测试套件,内部类可以访问外部类的数据

问题描述

我有一些大型测试套件,所以我将它们分成内部/嵌套类。这也使得 VSCode 测试浏览器中的结果更加友好。

但是当外部类中定义了公共夹具数据时,它不能很好地工作:

public class UserTests
{
  // common fixture data used by all inner classes
  public UserTests() => _fake = new Fake();
  private readonly Fake _fake;

  public class AddUser {

    public AddUser(UserTests o) => _outer = o;
    private readonly UserTests _outer;

    [Fact]
    public void test_foo() {
      // use _outer._fake
    }

    [Fact]
    public void test_bar() {
      // use _base._fake
    }
  }

  public class FindUser 
  {
    // ...similar to above
  }

  public class DeleteUser {
    // ...similar to above
  }
}

但我收到此错误

以下构造函数参数没有匹配的装置数据:UserTests o

所以也许上面的设置不好。

允许我拥有嵌套类并在外部类中创建夹具数据以便所有内部类都可以使用的好的设置是什么?

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)