我在写一些单元测试。我通过直接调用类来运行测试(而不是调用另一个程序)。问题是这些类中的一些使用由相对路径定义的数据,因此它们要求程序在特定目录中启动。我怎样才能改变这在Java中?Java更改文件工作目录
例如,我的单元测试开始于C:/unittest
,我需要的数据是C:/OtherProject
。我不想修改其他项目的代码,如果可能的话,是有这样的事情在Java:
File.setWorkingDir("C:/OtherProject");
这样,当像
File file = new File("data/data.csv");
会读C:/OtherProject/data/data.csv
而不是C:/unittest/data/data.csv
。
如何在测试目录中获取用于测试目的的数据副本? – Fildor
ASAIK,没有可用的东西。 –
这就是为什么人们使用数据库共享相同的数据,管理相同的数据。 –