- c - 在位数组中找到第一个零
- linux - Unix 显示有关匹配两种模式之一的文件的信息
- 正则表达式替换多个文件
- linux - 隐藏来自 xtrace 的命令
这是我正在为其开发单元测试的方法的代码:
public ActionResult ItemsListing()
{
var itemsList = itemsRepository.GetItems(true);
if (itemsList.Count() > 0)
{
var itemsListVMs = Mapper.Map<IEnumerable<Item>, IEnumerable<itemsListingViewModel>>(itemsList);
return View(itemsListVMs);
}
else
{
return RedirectToAction("Home");
}
}
以下是映射配置文件中的代码:
public static class MappingConfig
{
public static void RegisterMaps()
{
Mapper.Initialize(config =>
{
config.CreateMap<Item, itemsListingViewModel>();
});
}
}
并且我在 Global.asax
的 Application_Start()
事件中初始化了映射器,如下所示:
MappingConfig.RegisterMaps();
下面是我尝试运行的简单测试方法:
[TestMethod]
public void ItemsListing()
{
HomeController controller = new HomeController();
ViewResult result = controller.ItemsListing() as ViewResult;
Assert.IsNotNull(result);
}
当我简单地运行应用程序时,它工作正常。但是当我尝试运行单元测试方法时,它会显示上述错误消息。谁能帮我解决这个问题?谢谢!
最佳答案
您需要为您的单元测试创建/注册映射,并且 Application_Start()
不会被执行。它与 IIS 相关联,IIS 在单元测试期间不运行。您必须手动调用映射配置。
[TestClass]
public class HomeControllerTests {
[ClassInitialize]
public static void Init(TestContext context) {
MappingConfig.RegisterMaps();
}
[TestMethod]
public void ItemsListing() {
HomeController controller = new HomeController();
ViewResult result = controller.ItemsListing() as ViewResult;
Assert.IsNotNull(result);
}
}
在上面的测试中,映射配置是在一个用 [ClassInitialize]
属性装饰的方法中完成的
ClassInitializeAttribute Class Identifies a method that contains code that must be used before any of the tests in the test class have run and to allocate resources to be used by the test class.
关于c# - 测试方法 'X' 抛出异常 : System. InvalidOperationException : Mapper not initialized. 使用适当的配置调用初始化,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38999771/
我最近开始在 ASP.Net MVC 3 应用程序中使用 Signal R 库。我可以使用 Signal R 向客户端发送消息。但我注意到,如果我从另一个浏览器登录该应用程序,我会收到以下错误 - 异
我必须编写一个异步方法来与 Web 服务联系。这是我在 WebServiceHelper 类中的方法: public static Task SignIn(string username, stri
在 WPF 应用程序中,我有一个 BackgroundWorker 线程创建一个对象。我们称对象为 foo。 后台 worker 代码: SomeClass foo = new SomeClass()
Closed. This question needs to be more focused。它当前不接受答案。 想改善这个问题吗?更新问题,使其仅关注editing this post的一个问题。
This question already has answers here: InvalidOperationException after removing an element in an ar
我正在运行一个 .NET Core 应用程序,该应用程序正在监听 Azure 服务总线主题。当我运行该应用程序时,出现此错误: A sessionful message receiver cannot
我有一个 WPF 应用程序,其中 MainNavigationWindow 在其构造函数中注册了其他一些类的事件: SomeClass obj = new SomeClass(); obj.SomeE
我有一个 WPF 应用程序,其中 MainNavigationWindow 在其构造函数中注册了其他一些类的事件: SomeClass obj = new SomeClass(); obj.SomeE
编译程序时我没有收到任何错误,但是一旦我点击保存按钮我收到“InvalidOperationException 未处理”。 cmd.ExecuteNonQuery(); 然后突出显示,我在这上面花了一
我遇到了一个我完全不知道的问题。我收到以下错误消息: The specified Visual and the Visual do not share a common ancestor, so th
The contract type HelloIndigo.Service is not attributed with ServiceContractAttribute. In order to d
当我尝试返回要下载的文件时遇到了一些奇怪的问题,所以这是我的代码 string filePath = Path.Combine(Path1, Path2, filename); return File
我制作了一个程序,我想在其中手动更新数据 GridView 。- 我有一种方法可以通过清除 DGV 然后重新插入数据来刷新它。-使用设计器,我为 DGV 的 CellEndEdit 制作了一个事件处理
情况示意图 我开发了一个系统,可以将许多 Material (代码Matetiaal)添加到广告(代码Zoeker)。这种关系是多对多的。在这里你得到了我的类的结构。 +---------------
我有以下代码来构建从 SQL Server 中提取的高级数据结构,然后当该数据的检索完成时,我更新 UI。使用的代码是 private void BuildSelectedTreeViewSectio
我正在尝试使用表达式树,因为根据描述,这似乎是最正确(性能最好、可配置)的方法。 我希望能够编写一个语句,从 existingItems 集合中获取与 incomingItem 的 propertyN
问题 我有一个 MVVM 应用程序,它使用 Caliburn.Micro 作为 MVVM 框架,并使用 MEF 进行“依赖注入(inject)”(在引号中我知道它不是严格意义上的 DI 容器)。根据
我正在 try catch 声明变量时有时会发生的 InvalidOperationException。但是,以下代码不起作用。可能是因为我真的不知道你是如何捕捉到异常的。 public overri
在我尝试了很多很多解决方案之后,我无法以任何方式解决这个问题,所以我开始相信这个问题没有解决方案。 我有一个包含复杂属性的对象。例如:List .我正在工作线程上运行此类中的一个方法,以保持 GUI
情况: 我依靠默认的关联处理程序为各种文件类型(图片、Word 文档等)生成进程。这意味着我只将特定文件名指定为 StartInfo.FileName,并且在该文件名之前没有实际的可执行文件。同时我指
我是一名优秀的程序员,十分优秀!