java – Spring boot:如何在单元测试中从classpath读取资源
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了java – Spring boot:如何在单元测试中从classpath读取资源,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含825字,纯文字阅读大概需要2分钟。
内容图文
我试图在我的单元测试中从类路径中读取一个文件:
@Value("classpath:state.json")
Resource stateFile;
我在src / test / resources目录中有state.json文件.
当我尝试使用stateFile.getInputStream()读取此文件时,它不会返回任何内容.我究竟做错了什么?
我的测试类注释如下
@RunWith(SpringRunner.class)
@SpringBootTest
我可以看到,如果我尝试使用不正确的文件,代码将失败.所以我认为它在类路径中看到文件,但由于某种原因没有读取内容.
解决方法:
我刚碰到这个.我正在使用Maven.我看了一下我的target / test-classes文件夹,我的资源文件不在那里(即使它在我的src / test / resources文件夹中).
我运行了mvn clean install,然后重新检查了我的target / test-classes文件夹,资源文件就在那里.之后,我的测试能够找到文件并且测试工作正常.
因此,在您执行mvn clean之前,似乎不会复制您的资源. JUnit正在查看由maven构建的类路径,直到文件实际进入target / test-classes文件夹,JUnit将无法找到它.
内容总结
以上是互联网集市为您收集整理的java – Spring boot:如何在单元测试中从classpath读取资源全部内容,希望文章能够帮你解决java – Spring boot:如何在单元测试中从classpath读取资源所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。