【问题标题】:Null reference exception in xunit test cases: IConfiguration settings [duplicate]xunit 测试用例中的空引用异常:IConfiguration 设置
【发布时间】:2019-03-22 06:12:06
【问题描述】:

我已经为 API 控制器方法编写了一些 xUnit 测试。我正在使用 Azure 门户应用设置中的配置设置。

这是我用于初始化设置的代码。

private readonly  IConfiguration _configuration;
public   Controller(IConfiguration configuration)
{
    _configuration = configuration;
}

在测试用例类中,

IConfiguration _configuration;
[Fact]
public async void Method1()
{
    Controller controller = new Controller(_configuration);


}

运行测试后出现错误

System.NullReferenceException : 对象引用未设置为对象的实例。

对此有什么可能的解决方案?

【问题讨论】:

  • 您将 null 传递给构造函数,除非您在尚未发布的代码中初始化 _configuration

标签: c# xunit


【解决方案1】:

您需要定义_configuration。目前您声明了引用,但不为其分配对象。它是空的。

你需要这样的东西:

IConfiguration _configuration = new Configuration();

当然,上面假设 Configuration 是一个实现 IConfiguration 接口的类。

【讨论】:

  • 是否应该创建一个实现Iconfiguration的类?
  • @DVV,绝对是的。 IConfiguration 只是一个接口。它描述了一个合同,但它本身什么也不做。
猜你喜欢
  • 1970-01-01
  • 2019-01-03
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2020-11-03
  • 1970-01-01
相关资源
最近更新 更多