- Java 双重比较
- java - 比较器与 Apache BeanComparator
- Objective-C 完成 block 导致额外的方法调用?
- database - RESTful URI 是否应该公开数据库主键?
我正在尝试对我在 Maven/Eclipse 中开发的 Web 应用程序进行单元测试。这是一个 Spring MVC webapp,我需要一些单元测试来测试我的模型 Controller 。
为此,我需要使用我的 webapp 配置 .xml 文件来注入(inject) Controller ,但是,我的所有配置(以及配置引用的其他相关文件)都在 src/main/webapp 目录中(根据 Maven约定)- 这里有很多文件我需要在我的测试中引用,但是在运行测试时它们不可用,因为它们不在类路径中(Maven 似乎只添加了 src/main/java,src/test/java, src/main/resources, src/test/resources 到类路径但不是 src/main/webapps)
我不想为了测试而将我的整个 webapp 复制到我的 src/test/resources 文件夹中 - 有没有其他方法可以访问它们?
我可以通过更改 Eclipse 的“运行配置”以将此文件夹包含在类路径中来解决这个问题,但是当从命令行运行测试时这将不起作用?
有没有人遇到过这个?有已知的解决方案吗?
谢谢!
最佳答案
一般来说,您应该使用模拟(例如 EasyMock 或 jMock)来处理 Controller 的单元测试;单元测试应该测试与系统其余部分隔离的组件。在 Spring 3 中,您可以将您的 Controller 定义为带有注释的 POJO,然后简单地测试 Controller 而无需与 Spring 进行任何交互。
如果你想做更多的集成级测试,那么你可以将配置文件的公共(public)部分放在 src/main/resources 中,这样它们就可以在类路径中访问。然后在 src/test/resources 中使用特定于测试的配置进行测试。该文件可以将这些文件与您需要的任何内容一起导入,或者您可以使用 @ContextConfiguration 注释您的测试用例以指定组装上下文所需的多个文件。
有关具体示例,请参阅此 blog post on integration testing Spring MVC . Testing chapter of the Spring manual还对 Spring 中的集成测试进行了不错的概述。
关于java - Maven 中的单元测试需要访问 src/main/webapp 目录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2699181/
我正在尝试使用 jquery 获取图像 src,如下所示: HTML Javascript var imageSrc = $('.post_container img').attr('s
我遇到错误,无法完成构建。我搜索了 Stackoverflow 和 Github。我已经尝试了很多方法,但我无法修复。请帮忙。 (1) 在 [src/nullnull/debug, src/debug
我正在尝试使用图像制作一款类似 Match3 的游戏,但我无法进行比较。我正在为固定数量的 atm 执行此操作,只是为了让它正常工作,稍后应该在 foreach 循环中。如果有什么区别的话,该函数位于
我正在使用 jquery 插件 OwlCarousel,在我的一个 View 中使用 ng-repeat 场景,如下所示: 它运行良好,并为轮播中的每个项目输出以下标记: 有没
我的代码如下所示: Bitmap b = BitmapFactory.decodeResource(getResources(), R.drawable.image1); int wi
如果未找到 src,我将使用 Angular 指令作为后备 url 作为名称首字母 指令 (function () { 'use strict'; angular .m
我是构建 chrome 扩展的新手,从一个小项目开始,我需要在弹出窗口中打印“构建版本”。构建版本被附加到 JS/CSS 资源中,如下所示: 需要从脚本 src 值中提取“6.0”。你能帮我看看如何
类型‘AbstractControl’上不存在属性‘Controls’。
这个tutorial演示如何使用指令 ngSrc 而不是 src : 他们要求: Replace the ng-src directive with a pl
我正在创建一个包含多个图像的图库,您可以在其中单击一个小缩略图,然后将打开该图像的更大版本。 打开后,如果您移动光标,图像将在 y 轴上跟随您。类似于 https://www.zara.com/es/
文档[] src.charAt src.length 这三样东西是什么? 我确定 pixState 会给我 1 或 0; var pixState = document[imgName].src.ch
问题背景: 我正在使用这个问题的解决方案:How to update AngularJS view when the value has not changed?所以在我看来我有: 当我更改照片时
我在 html 中有整个页面,在输出之前我想将所有 img src 替换为 data-src我正在使用 return (preg_replace('~]*\K(?=src)~i','data-',
Difference(s): android:src and tools:src? 如果有的话,什么时候使用 tools:src 而不是 android:src 是合适的? 最佳答案 如果您在运行时在
我需要检查每个 script 标签的 src 值,如果匹配,我想更改该脚本标签的 src 属性...像这样: var scripts = document.getElementsByTagName("
使用 img 标签的 data-src 或 src 属性有什么区别和后果(好的和坏的)?我可以使用两者获得相同的结果吗?如果是这样,应该什么时候使用它们? 最佳答案 属性 src 和 data-src
我使用 Vue。我尝试输出图像,当我使用 src 时效果很好,但当我使用 :src 时效果不佳。 作品 不起作用 我试过但没有用 @ 在路径的第一个。 ~ 路径中的第一个。 ./ 在路径的第一个。
在当前项目中我正在使用 jQuery。我只是想知道为什么会这样, $('#homeIcon').hover(function(){ document.getElementById('homeI
我在严格的 Java 环境中。 所以这个问题并不像标题中那么简单,我不是要解决我遇到的问题,它更理论化,以获得更好的知识。 我感兴趣的是用双引号或单引号匹配 src,但如果是双引号,它也必须用双引号结
我有一个 Joomla 2.5.28,现在使用 https 而不是 http。 一些文章(很多)包含来自 Vimeo 的嵌入视频。 最初,这些视频是使用http嵌入的,所以现在我的数据库中有字段int
我是一名优秀的程序员,十分优秀!