【问题标题】:Java unit test cannot access resource from application projectJava 单元测试无法访问应用程序项目中的资源
【发布时间】:2014-06-17 08:56:27
【问题描述】:

单元测试位于与实际应用程序不同的项目中。如果我运行一个引用资源的方法,我不会在测试中找到它。如果我在应用程序中运行相同的方法,一切正常。到目前为止,我尝试了这两种方法来获取资源的 URL:

new URL("platform:/plugin/application/res/its_name.xml")

this.getClass().getResource("/its_name.xml");

是否有任何简单的方法(在 Eclipse 中)使测试项目可以访问资源,还是需要将测试与应用程序放在同一个项目中?

文件夹结构是这样的:

application
           \src
               \packages
           \res

tests
     \src

【问题讨论】:

  • 为什么你的测试不在同一个项目中?
  • 这些资源在哪个文件夹中?您能与我们分享您的项目框架吗?
  • 我的测试不在同一个项目中,因为我是这样收到的。
  • 您可以尝试在测试项目构建路径中添加您的依赖项目。在Build Path 点击Configure build path --> 选择Projects tab --> 点击add 并选择你的required project

标签: java eclipse unit-testing maven resources


【解决方案1】:

在 JAR 文件中构建您的项目并将其添加到测试项目中...但我真的不建议您将您的项目与 junit 测试分开,因为它只会让事情变得更难。

【讨论】:

  • 如果测试项目在 Eclipse 中执行,则不需要依赖 jar。所需项目可以包含在测试项目的构建路径中。
  • 是的,这也可以......但我只是想给出一个通用的解决方案......无论如何我认为他/她应该将项目内的测试写在一个单独的源文件夹中......这会容易得多,而且无论如何在单独的项目中编写也没有任何好处......
猜你喜欢
  • 2012-03-04
  • 2014-08-21
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-10-15
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多