C#单元测试-抛出NullReferenceException的测试方法

时间:2019-07-09 17:49:05

标签: c# unit-testing nullreferenceexception

我编写了一个单元测试,该单元测试用于测试控制器方法以确定如何处理异常。

我的控制器方法如下:

public IHttpActionResult FindAllAgents(int clientID)
{
AgentDisplay agentDisplay = new AgentDisplay();
var agentList = _agentCallRepo.ById(clientID).ToList();
agentDisplay.AgentList = agentList;
agentDisplay.Nav = GetaAgentTableNav(clientID);

return Ok(agentDisplay);
}

此控制器方法的测试方法如下:

public void FindAllAgents_Test() 
{
       clientId = 1;
       Boolean isNull = false;

        var findAgents = new AgentsController(mockCallBoardStatsRepo.Object, mockAgentCallStatsRepo.Object, mockClientCallsRepo.Object);
        try
        {
            findAgents.FindAllAgents(2);

        } 
        catch (ArgumentNullException e)
        {
            isNull = true;
        }
        Assert.IsNotNull(clientId);
    }

构造函数需要三个模拟存储库。当我为此方法运行测试时,不断出现以下错误:

System.NullReferenceException: Object reference not set to an instance of an object.

该错误不是该错误发生在方法中的特定位置,但到目前为止,我尝试过的所有操作均未更改任何内容。有人知道这里的问题在哪里吗?任何帮助将不胜感激。谢谢

0 个答案:

没有答案