0

我所有的junit测试都在eclipse中运行。其中一些已经硬编码了应用程序属性文件之类的东西的相对路径。现在我将它们设置为作为我们 ant 构建过程的一部分运行。
不幸的是,ant build 有不同的基本路径。这会导致使用硬编码路径的测试失败。

我必须有哪些选择才能在两种环境中运行测试?

Eclipse 使用 root 作为路径的基础。Ant 使用 root/src/test 作为基础。我已经通过更新硬编码路径并运行测试来验证这一点。

层次结构的布局

/root/
+ config/
  + app.properties
    + src/
+ java/
  +production code/
+ test/
  + build.xml
  + junit tests/
4

2 回答 2

0

嗯...移动你build.xml的根并改变它的路径。我不确定您为什么希望 ant build 和 eclipse 使用不同的根。

于 2013-10-22T17:22:46.073 回答
0

没有硬编码的完整路径。相反,单独配置路径,或者相对于您配置的几个根路径(我的偏好)。考虑使用依赖注入来配置单元测试代码和要使用的路径。您的单元测试可以使用假路径,并且您的main方法可以将部署的代码配置为使用真实路径。

于 2013-10-22T19:46:31.083 回答