我得到了一个TestNG测试,它可以完全正常运行。在其中的某个地方我得到了:
URL fileName = this.getClass().getClassLoader().getResource("config.properties");
我正在尝试使用Ant运行相同的测试:
<testng outputDir="${resultsFolder}" haltOnFailure="false">
<classpath>
<fileset dir="./src/">
<include name="**/*.properties"/>
</fileset>
-----------------------------...--------------------
</classpath>
<classfileset dir="correct path here" includes="**/*.class" />
</testng>
我可以在调试模式下看到config.properties位于类路径中。但是顶部的行找不到它,它是空的。
编辑:我解决了。关键行实际上并没有直接在类路径中搜索文件,而是在文件/文件夹中搜索。所以,这解决了我的问题:<pathelement location="src/"/>
感谢您的帮助。
答案 0 :(得分:1)
尝试将此<classpath>...</classpath>
替换为:
<classpath>
<pathelement path="./src"/>
</classpath>
为了让JVM找到config.properties
,config.properties
的父目录应该在类路径中。