【发布时间】:2013-08-12 19:28:03
【问题描述】:
我正在尝试为我的控制器方法之一编写测试方法。 这是控制器方法
public ActionResult LicenseDetails(Guid id)
{
var licenseDetails = _businessUnitRepository.GetLicenseDetails(id);
return View(licenseDetails);
}
这是我为检查它是否调用存储库中的方法而编写的测试。
[TestMethod]
public void ModuleDetails_Action_Calls_GetLicenseDetails()
{
_mockBusinessUnitRepository.GetLicenseDetails(Arg<Guid>.Is.Anything);
_controller.LicenseDetails(Arg<Guid>.Is.Anything);
_mockBusinessUnitRepository.AssertWasCalled(x=>x.GetLicenseDetails(Arg<Guid>.Is.Anything));
}
我现在收到错误消息: 测试方法 AdminPortal.Tests.Controller_Test.Customer.BusinessUnitControllerTests.ModuleDetails_Action_Calls_GetLicenseDetails 抛出异常: System.InvalidOperationException:在录制时仅在模拟方法调用中使用 Arg。预期 1 个参数,已定义 3 个。
Ps:我正在使用 Rhino mock,我是这个测试的新手
【问题讨论】:
标签: asp.net-mvc unit-testing asp.net-mvc-4 testing rhino-mocks