我剛開始使用Nunit和WebApi項目進行單元測試。使用Nunit進行單元測試給出了錯誤
我已經開發了一個測試案例我的控制器:
private readonly INewsBusinessLogic _newsBusinessLogic;
[Test]
public async Task GetAllNews()
{
// Arrange
var controller = new NewsController(_newsBusinessLogic);
controller.Configuration = new System.Web.Http.HttpConfiguration();
controller.Request = new System.Net.Http.HttpRequestMessage();
// Act
var actionResult = await controller.Get();
//assert
Assert.IsNotNull(actionResult);
}
阿比控制器:
public class NewsController : ApiController
{
private readonly INewsBusinessLogic _newsBusinessLogic;
public NewsController(INewsBusinessLogic newsBusinessLogic)
{
_newsBusinessLogic = newsBusinessLogic;
}
public async Task<IHttpActionResult> Get()
{
return Ok(await _newsBusinessLogic.GetNewsUpdates());
}
}
當我調試我的測試中它給我的NullReferenceException
上法錯誤,以及我非常清楚What is a NullReferenceException?。但無法弄清楚,爲什麼會發生這種情況以及如何解決這個問題。
邊注:我沒有使用任何ORM。
好一個,你傳遞一個'null'可變進'NewsController'構造函數你有沒有在你的例子,其中一個值分配給顯示'_newsBusinessLogic' – Nkosi
你誤解。在測試中你沒有給變量賦值,所以爲什麼它是空 – Nkosi