格式不是 CSV 的多部分无法在类路径上找到文件

Multipart with format other than CSV not able to find file on classpath

我的类路径 (src/main/resources) 文件夹中有文件名 test.csv 、test.xml 、test.text。

我正在为我的 Junit 测试用例创建 Mutlipart,如下所示:

MultipartFile multipartFile = new MockMultipartFile("test.csv","test.csv","text/csv",
                new FileInputStream(new File("test.csv")));

这工作正常。

然而,当我尝试使用下面的 XMl 代码时,它给出了 FileNotFoundException。

MultipartFile multipartFile = new MockMultipartFile("test.xml","test.xml","text/xml",
                    new FileInputStream(new File("test.xml")));

谁能告诉我,有什么问题吗?

既然是嘲讽,就应该这样使用。

MockMultipartFile mockMultipartFile = new MockMultipartFile("test.xml","test.xml","text/xml",
                    new FileInputStream(new File("test.xml")));

实际结构应该是这样的

MockMultipartFile mockMultipartFile = new MockMultipartFile("test", "test.xml", <XML MEDIA TYPE>,
      "String contents".getBytes()));

有关更多参考,请参阅下面的链接。 https://www.codota.com/code/java/classes/org.springframework.mock.web.MockMultipartFile

Using Spring MVC Test to unit test multipart POST request

得到如下解决方案:

MockMultipartFile   mockitoMultipartFile = new MockMultipartFile("test.xml","test.xml","text/xml",
                this.getClass().getClassLoader()
                .getResourceAsStream("test.xml"));