默认情况下,java.io包中的类始终解析为相对 当前用户目录的路径名。该目录名为 由系统属性user.dir提供,通常是 Java虚拟机被调用了。
因此,据此,如果我从弹出菜单中运行JUnit类,选择JUnit test,则当前文件夹应该是测试类所在的文件夹。
但实际上,它使用“运行配置-环境”页面中的“默认工作目录”作为最后使用的“运行配置”。因此,如果测试使用具有相对路径的文件,则大多数情况下无法从弹出菜单中正确启动它。
即使我为JUnit测试类创建了一个运行配置,是的,它也会自动将其默认工作目录(在“运行配置-环境”页面上)设置为测试文件所在的文件夹。但是仍然可以通过弹出菜单使用,它再次从上次使用的“运行配置”中获取“默认工作目录”。
如何以某种方式设置默认目录或Eclipse,以便可以根据文档使用当前文件夹启动测试类?
答案 0 :(得分:1)
您没有提供尝试执行的示例,但我想您尝试加载测试中需要的某些文件。如果是这种情况,您最好更改加载文件的方式。
YourTestClass.class.getResource("filename")
或YourTestClass.class.getResourceAsStream("filename")
是您应该使用的。它查找相对于YourTestClass
的文件。