我创建了一个返回200 ok响应的Web API。
public IHttpActionResult get()
{
return Ok();
}
此外,我还使用NUnit框架创建了一个测试项目。
var controller = new StatusController();
var result= controller.level0() as OkNegotiatedContentResult<object>;
IHttpActionResult actionResult = controller.level0();
Assert.AreEqual(HttpStatusCode.OK, actionResult);
但是我有这样的错误
Expected: OK
But was: <System.Web.Http.Results.OkResult>
当我尝试调试'actionResult'变量时,它包含一个错误
Request = '((System.Web.Http.Results.OkResult)actionResult).Request' threw an exception of type 'System.InvalidOperationException'
如何查看我的http状态代码?
答案 0 :(得分:3)
根据提供的控制器,您似乎将结果转换为错误的类型。
Ok()
返回OkResult
的实例
检查返回类型以验证被测操作的行为符合预期。
//Arrange
var controller = new StatusController();
//Act
IHttpActionResult actionResult = controller.get();
//Assert
Assert.IsInstanceOf<OkResult>(actionResult);