NQA*_*NQA 2 java junit intellij-idea maven
我正在使用以下调用来获取流,以便可以找到一些资源的文件名。
Thread.currentThread().getContextClassLoader().getResourceAsStream(...)
Run Code Online (Sandbox Code Playgroud)
当我正常运行代码时,这可以正常工作;如果将资源复制到测试文件夹中,则也可以工作。
如何避免这种重复并使我的测试(通过IDEA运行时)使用main中的资源?
您拥有的所有内容都src/test/resources通过maven-resources-plugin复制到target/test-classes。然后,您拥有的一切src/main/resources都进入target/classes。然后,maven-surefire-plugin 按以下顺序配置类路径:target/test-classes首先和target/classes下一个。
因此,如果您的资源同时位于src/main/resources和中src/test/resources,则其“测试”版本将被加载到单元测试中。
如果仅存在于中src/main/resources,则它将在单元测试中可用,而无需任何其他操作。
如果src/test/resources仅存在,则只能在单元测试期间访问它。
| 归档时间: |
|
| 查看次数: |
1201 次 |
| 最近记录: |