Tôi đã đoạn mã sau vào bộ điều khiển của tôi:Đơn vị kiểm tra RedirectToRouteResult
public class MyController : BaseController
{
public ActionResult MyMethod()
{
...
return RedirectToAction("Index", "Dashboard");
}
}
Tôi muốn thử nghiệm đơn vị chuyển hướng này (RedirectToRouteResult). Tôi đã thực hiện theo cách này:
Assert.IsTrue(result.RouteValues.ContainsKey("action"));
Assert.IsTrue(result.RouteValues.ContainsKey("controller"));
Assert.AreEqual("Index", result.RouteValues["action"].ToString());
Assert.AreEqual("Dashboard", result.RouteValues["controller"].ToString());
Vì vậy, tôi cần bốn xác nhận để kiểm tra RedirectToRouteResult của tôi. Có cách nào hiệu quả hơn không?
Điều này là đủ – Amit
id cũng khẳng định.instanceoftype vì bạn có nó trở về actionresult – Slicksim
Vâng, tôi làm theo cách này: RedirectToRouteResult result = (RedirectToRouteResult) controller.Captcha (loginUseraccount); Nếu nó không phải là một RedirectToRouteResult một ngoại lệ được ném và thử nghiệm không thành công. – mosquito87