我有一个Maven项目,我只运行自动测试。
src/test/resources
我有一个文件夹
书籍
包含2个XML文件
(src/test/resources/books/1.xml,
src/test/resources/books/2.xml)。
在测试期间,我检查文件夹中有多少个文件
'书籍'
int filesNumber = new File(".\src\test\resources\books").listFiles().length;
当我使用Maven进行测试时,我的机器上的一切都很好
"清洁测试"
当我在TeamCity服务器上运行测试时,问题开始了,因为我得到了
nullpointer
当它寻找"书籍"文件夹时。它只是找不到。有人可以告诉我为什么吗?也许我不应该将此文件夹放在资源目录中?如果是,则我应该使用哪个目录..
将测试资源放入src/test/resources
中是可以的,但不要将其读为文件。例如,将它们读为资源,例如:
// assuming MyTest class in books package
MyTest.class.getResourceAsStream("books1.xml");
或
MyTest.class.getClassLoader().getResourceAsStream("books/books1.xml");