junit 读取 resource 目录下照片文件
编写单元测试过程中,接口入参为照片文件byte[],想到的方法是在test/resources目录下,放好测试照片。代码编写遇到两个问题
1. 读取resources目录下文件
1 | ClassPathResource resource = new ClassPathResource("front.png"); |
2. Resource转换为byte[]
Resource有getFile()接口,InputStreamSource有getInputStream()接口,ClassPathResource作为子类,可以通过这两个接口方法,然后再进行转换。还有一个更简便的方法,通过Files工具读取path
注:Files读取的path不是ClassPathResource#getPath()的返回值,而是ClassPathResource#getURL()#getPath()的值
1 | byte[] bytes = Files.readAllBytes(Paths.get(resource.getURL().getPath())); |