JUnit:如何按照 Spring 的预期访问 Spring 配置?

2024-04-16

有一个教程视频 http://www.infoq.com/presentations/Mastering-Spring-MVC-3介绍了 Spring MVC 3.0。在演示项目中,他们使用以下目录结构:

<proj>
   src
      main
         webapp
            WEB-INF
               spring
                  appServlet
                     controllers.xml
                     servlet-context.xml
                  root-context.xml

假设我有一个支持 Maven 的项目,并且我想使用 Spring 的配置编写 JUnit 测试。目前我们使用 JUnit 4.8.2。这显然需要加载上面列出的三个文件。

在测试中我可以使用注释,例如

@RunWith(SpringJUnit4ClassRunner.class)
@ContextConfiguration("classpath*:/WEB-INF/spring/**/*.xml")

但是,这并没有找到 XML 文件。我查看了类路径并注意到,只有<proj>/target/classes and <proj>/target/test-classes默认情况下包含在内。

一个明显的解决方案是将正确的路径添加到类路径中,但我不知道这是否是 Spring 的人们所想到的。

因此,我的问题是:我需要做什么来加载配置文件,同时让它看起来像是使用 Spring 的完全专业编码器?


另一种选择是使用文件系统资源加载器:

@RunWith(SpringJUnit4ClassRunner.class)
@ContextConfiguration("file:src/main/webapp/WEB-INF/spring/root-context.xml")
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

JUnit:如何按照 Spring 的预期访问 Spring 配置? 的相关文章

随机推荐

  • 在 Linux 上安装 tar.gz

    我已经从以下位置下载了 Node js这个链接 https nodejs org en 单击按钮时指向此链接 https nodejs org dist v4 1 2 node v4 1 2 linux x64 tar gz https n
  • 为什么 1 不大于 -0x80000000 [重复]

    这个问题在这里已经有答案了 为什么1不大于 0x80000000 我知道这与溢出有关 但有人可以解释为什么吗 0x80000000 不是一个常量吗 我认为它是 assert 1 gt 0x80000000 C 中的断言触发器 这是为什么 我
  • 使用 jQuery 动态填写表单值

    我知道如何使用纯 PHP 执行此操作 但我需要在不重新加载页面的情况下执行此操作 无论如何 jQuery 是否可以有效地拉回一些数据库结果 基于用户在表单上的第一个文本字段中输入的内容 然后使用从数据库查询拉回的数据填充剩余的一些字段 本质
  • 运行 Jest 测试并收集特定目录中所有文件的覆盖率

    我正在使用以下代码对特定文件运行 Jest 测试 jest utils spec js collectCoverageFrom utils js 如果我想测试我使用的整个目录 jest someDirectory collectCovera
  • ...此内容也应该通过 HTTPS 加载

    再会 Site https mult privet com https mult privet com 在我的 Chrome 控制台中 我看到以下错误 blocked The page at https yandex st share ya
  • Vaadin Flow 应用程序自动在明暗模式之间切换

    Vaadin Flow 14 附带了两个捆绑主题的浅色和深色版本 Lumo and Material And now 浏览器可以向主机操作系统询问用户对浅色或深色模式的偏好 https stackoverflow com q 5084016
  • 返回空字符串或空值是否有更多优势?

    如果我正在编写以下方法 例如 那么以下方法是否被认为是良好的做法 A 如果文档不存在则返回空字符串 B 返回一个null value 做了很多 Java 工作 并且 Java 中的方法需要返回类型 我的印象是返回一致的类型是最佳实践 PHP
  • 使用 jquery UI 下一个按钮提交输入字段值,php 回显结果

    我当前正在使用 jquery ui 选项卡 仅适用于下一个 上一个按钮 和文本区域 我开发了一个 ajax js 函数 它将自动提交存储在文本区域中的值 并在 tab 2 中回显结果 但我目前想将自动提交表单的方法更改为当用户单击 下一步
  • 在 Xcode 4 中编译 Java

    我知道这个问题已经流传了很长时间 Xcode 4 中的 Java 我不需要任何建议 Eclipse Netbeans 例如 我只想在 XCode4 而不是 3 中编译一些简单的 Java 代码 我设法创建了一个文件 正如预期的那样 语法和一
  • 如何使 QPlainTextEdit 看起来像 .txt 文件?

    我有一个 QPlainTextEdit 它以表格形式显示一些信息 并且我添加了将其另存为 txt 文件的选项 我建了桌子漂亮的 https pypi python org pypi PrettyTable 当我打开 txt 文件时 它看起来
  • Android 平台中的推送通知

    我正在寻找编写一个从服务器接收推送警报的应用程序 我找到了几种方法来做到这一点 SMS 拦截传入的 SMS 并从服务器发起拉取 定期轮询服务器 每个都有其自身的局限性 短信 不保证到达时间 轮询可能会耗尽电池电量 请问您有更好的建议吗 非常
  • 再次:CSS、UL/OL:自定义计数器的缩进不正确

    我在中描述了我原来的问题这个线程 https stackoverflow com questions 16521330 css ul ol incorrect indent with custom counter 简而言之 当在 UL 中使
  • php 字符串转十六进制并带有 2 的补码:

    嗨 我有一根绳子193390663我想将其转换为hex with 2 s compliment 输出是0B86E847 现在我正在使用下面的功能 但它给了我313933333930363633 public static function
  • 为什么push指令会改变rsp的值? [复制]

    这个问题在这里已经有答案了 我正在检查 Ericksons Hacking The Art of Exploitation 中的这段代码片段 void test function int a int b int c int d int fl
  • JMS 客户端应用程序错误。无法使用 URL 连接

    我正在 C 上编写客户端应用程序以连接到我的本地 JMS Weblogic Server 12c 我尝试使用这里的示例代码 http docs oracle com cd E15523 01 web 1111 e13746 app exam
  • 创建和使用 Android 的 ContentProvider

    当我调用 Android ContentProvider 时 出现以下异常 java lang RuntimeException 无法 开始活动 ComponentInfo de harm android couchone de harm
  • 在水平列表上使用鼠标滚轮进行水平滚动

    我正在尝试使用鼠标滚轮进行水平滚动 但似乎不起作用 这是我的Fiddle http jsfiddle net a3j1x47a 我的主课 selector是一个可滚动的overflow 这是 JS 我正在尝试用它初始化滚动 selector
  • 如何使用quartz搜索pdf文档中的文本

    我正在使用quartz 来显示pdf 我需要获取搜索文本所在页面的索引 有人可以帮助我吗 谢谢 解决方案 有一个代码示例 用于从页面中提取文本并检查其序列 import
  • 在类中使用 requestAnimationFrame

    我不知道如何使用requestAnimationFrame在课堂上 这段代码工作正常 window onload function var width 20 function animation width var element docu
  • JUnit:如何按照 Spring 的预期访问 Spring 配置?

    有一个教程视频 http www infoq com presentations Mastering Spring MVC 3介绍了 Spring MVC 3 0 在演示项目中 他们使用以下目录结构