C# 如何在单元测试中引用HomeController?
VS 2013的UnitTest出现以下错误找不到类型或命名空间名称“HomeController”是否缺少using指令或程序集引用 我的代码是:C# 如何在单元测试中引用HomeController?,c#,asp.net-mvc,unit-testing,C#,Asp.net Mvc,Unit Testing,VS 2013的UnitTest出现以下错误找不到类型或命名空间名称“HomeController”是否缺少using指令或程序集引用 我的代码是: using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; using Admin.Web.API; using Admin.Web.API.Controllers; using
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using Admin.Web.API;
using Admin.Web.API.Controllers;
using Microsoft.VisualStudio.TestTools.UnitTesting;
using System.Web.Mvc;
namespace Admin.Web.API.Controllers.Tests
{
[TestClass()]
public class HomeControllerTests
{
[TestMethod()]
public void IndexTest()
{
var controller = new HomeController();
ActionResult _Result = controller.Login("jschultz0614@gmail.com", "********") as ActionResult;
Assert.IsInstanceOfType(_Result, typeof(RedirectToRouteResult));
}
}
}
它在控制器线上呕吐
我遗漏了什么?我猜Homecontroller在同一解决方案中的另一个VS项目中 您需要将WEB API项目的项目引用/程序集引用添加到单元测试项目中 要添加项目引用,请在解决方案资源管理器中右键单击单元测试项目名称,然后选择“添加引用…”,在“引用管理器”对话框中选择Web API复选框(如果已列出),或浏览到其位置
单击“确定”。我希望问题应该解决。我猜您缺少using指令或程序集引用,如错误消息所示。如果没有看到更多的代码,我想我们不能说更多了。请发布您的HomeController。您可能只需要添加对测试项目的引用,该项目指向解决方案中包含HomeController的另一个C项目。我的引用是Admin.Web.API、Microsoft.VisualStudio.QualityTools…、System、System.Web和System.Web.Mvc。Admin.Web.API引用上有一个黄色三角形。HomeController仍然只是一个类。与任何其他类一样,引用听起来像是需要修复Admin.Web.API引用。已经修复了,并且引用上有一个黄色三角形。请检查这两个项目的.NET Framework版本。有时,如果一个高于另一个,这可能会发生。为此,您需要右键单击解决方案资源管理器中的项目名称,然后选择“属性”检查应用程序选项卡,检查两个项目的目标框架。确保它们是相同的版本。