【发布时间】:2013-08-21 02:10:59
【问题描述】:
我有一个测试类,下面我发布了一个测试类的示例测试
namespace AdminPortal.Tests.Controller_Test.Customer
{
[TestClass]
public class BusinessUnitControllerTests
{
private IBusinessUnitRepository _mockBusinessUnitRepository;
private BusinessUnitController _controller;
[TestInitialize]
public void TestInitialize()
{
_mockBusinessUnitRepository = MockRepository.GenerateMock<IBusinessUnitRepository>();
_controller = new BusinessUnitController(_mockBusinessUnitRepository);
}
[TestCleanup]
public void TestCleanup()
{
_mockBusinessUnitRepository = null;
_controller.Dispose();
_controller = null;
}
#region Index Action Tests
[TestMethod]
public void Index_Action_Calls_GetAllBusinessUnit()
{
_mockBusinessUnitRepository.Stub(x => x.GetAllBusinessUnit());
_controller.Index();
_mockBusinessUnitRepository.AssertWasCalled(x=>x.GetAllBusinessUnit());
}
}
}
当我运行项目时,我得到以下屏幕
我检查了引用,测试项目有对主项目的引用。 知道为什么测试没有运行或说它们没有结论吗?
编辑 1:
我看到了一个帖子 here 并将我的测试设置的默认处理器架构更改为 X64,但它仍然不起作用。
【问题讨论】:
-
这是 ReSharper 中的一个已知问题。这里有一些潜在的解决方案:stackoverflow.com/questions/12191352/….
-
您是否进行了清理和重建?我记得在 VS2010 中有一些奇怪之处,在您更新和重建程序集后会丢失对它们的引用。
-
@ChrisMantle 我检查了它并更改了我的默认处理器架构,但它仍然不起作用
-
@MarkWalsh 我正在使用 VS2012。我仍然按照你说的清理并重建了解决方案,但仍然无法正常工作
-
这个问题是discussed at meta
标签: c# asp.net-mvc asp.net-mvc-4 unit-testing resharper