【发布时间】:2013-01-21 13:41:18
【问题描述】:
正如在不同位置所提到的,maven(3.0.1 版)不支持项目外部的 CLASSPATH。因此,当 jUnitTest 想要启动外部应用程序(例如 OpenOffice)时,它会在启动命令“$> mvn test”时失败。 在 Eclipse 中,我可以在“运行配置”中手动添加 CLASSPATH,然后它就可以正常工作了。
我的问题:我可以在我的 jUnitTest 源代码中添加代码来验证我在 Eclipse 中吗?因为这只会跳过命令行上的测试。虽然其他测试仍在命令行上继续进行。
【问题讨论】:
-
观察 - 调用 OpenOffice 的单元测试不是单元测试!至少,这听起来像是一个集成测试。
-
我使用 OpenOffice 的 java API,当我启动 OO 时,我只能测试一个单元格(即)是否由我的程序正确设置。因此对我来说它是单元测试。但是如果你有建议在不启动 OO 的情况下进行单元测试,你可以告诉我。
-
有太多话要说,不能挤进评论,但我认为你应该把你对 Java API 的使用隐藏在一个外观后面。如果这个外观呈现为一个接口,您可以在单元测试中模拟该对象并确认您对 API 进行了正确的调用,而无需启动 OO。
-
您不能使用相同的 OpenOffice java API 来检查您执行的操作的结果吗?
-
示例:我有一个设置或获取单元格颜色的包装类:“public static void setCellColor(XCell cell, int color)”和“public static int getCellColor(XCell cell)”。我可以在不启动 OO 的情况下进行单元测试吗?
标签: java eclipse maven junit openoffice-api