在nunit中正确获取控制器的结果,可以通过以下步骤实现:
以下是一个示例代码:
[TestFixture]
public class MyControllerTests
{
[Test]
public void MyAction_Returns_ViewResult()
{
// Arrange
var controller = new MyController();
// Act
var result = controller.MyAction();
// Assert
Assert.IsInstanceOf<ViewResult>(result);
var viewResult = (ViewResult)result;
Assert.AreEqual("MyView", viewResult.ViewName);
Assert.IsInstanceOf<MyModel>(viewResult.Model);
}
[Test]
public void MyAction_Returns_JsonResult()
{
// Arrange
var controller = new MyController();
// Act
var result = controller.MyAction();
// Assert
Assert.IsInstanceOf<JsonResult>(result);
var jsonResult = (JsonResult)result;
Assert.AreEqual("Success", jsonResult.Data);
}
[Test]
public void MyAction_Returns_RedirectResult()
{
// Arrange
var controller = new MyController();
// Act
var result = controller.MyAction();
// Assert
Assert.IsInstanceOf<RedirectResult>(result);
var redirectResult = (RedirectResult)result;
Assert.AreEqual("/Home/Index", redirectResult.Url);
}
}
请注意,以上示例代码中的MyController
、MyAction
、MyView
、MyModel
等都是示意性的命名,实际应根据具体的控制器和方法进行修改。
对于nunit的具体使用和更多相关信息,可以参考腾讯云的nunit相关产品和文档:
领取专属 10元无门槛券
手把手带您无忧上云