このような単体テストケースを書いていますが、
public class XMLUtilsTest {
private static final String XML_FOR_TEST ="a/b/c/xml_utils_test.xml";
@Before
public void setup() {
}
@Test
public void testGetElementValue() throws Exception {
InputStream inputStream = readTestXML(XML_FOR_TEST);
System.out.println("Input Stream: "+inputStream);
}
private InputStream readTestXML(String testXmlFile) {
//InputStream inputStream = XMLUtilsTest.class.getResourceAsStream(testXmlFile);
//InputStream inputStream = Thread.currentThread().getContextClassLoader().getResourceAsStream(testXmlFile);
InputStream inputStream = this.getClass().getClassLoader().getResourceAsStream(testXmlFile);
return inputStream;
}
}
デバッグ中に、 readTestXML メソッドの this.getClass().getClassLoader() 呼び出しがクラスを適切にロードすることを確認しましたが、 this.getClass().getClassLoader() の出力で getResourceAsStream(testXmlFile) が呼び出されると、出力は null になります。
私のプロジェクト構造はこのようなものです、
--src
--main
--test
--java
--XMLUtilsTest.java
--resources
--a.b.c
--xml_utils_test.xml
提案してください。
ありがとう、
ビジェイ・ボア