如何在netbeans中组织不同的java源文件夹(用于测试)?

时间:2015-03-17 21:40:01

标签: java netbeans junit

我正在Netbeans(8.0.2)中开发一个项目,该项目使用JUnit(4.x)来测试应用程序代码(在Netbeans模块中)。在同一个模块中,我也有一些集成测试。我找到了一种方法来分离应用程序代码,单元测试和集成测试,方法是将后者放在MODULE_PATH \ test \ qa-functional \ src下的单独文件夹中。通过这种方式,Netbeans IDE将这三种语义不同的类放入单独的文件夹中:

Netbeans projects view with collapsed source, unit and functional test packages

问题是,我的功能测试往往会变得复杂,所以我更愿意让它们进行单元测试。但是,如果为一类功能测试包创建单元测试(在单元测试包中),则测试不会编译。似乎是一些类路径问题。

Netbeans projects view with expanded source, unit and functional test packages. IntegrationTestTest.java has an error

我知道我也可以将功能测试的单元测试放在功能测试包中(如果这个问题没有为我提供一些解决方案,我会这样做),但无论如何,有没有办法解决这个问题在Netbeans?

我发现了一个糟糕的解决方案,改变了common.xml中ant目标的顺序(在NB 8.0.2的第610行)。但这是不可移植的,随着新版Netbeans的变化,......所以不是真正的解决方案。请参阅Netbeans Forum: Classpath problem when unit testing functional tests

中的详细信息

在Eclipse中,我只是在Java构建路径上添加一个新的源文件夹。但Netbeans中不存在这种机制? 为了清楚起见,我添加了一个屏幕截图。

Eclipse package explorer with separate unit test folders for src and functional test code

提前感谢您的帮助。

1 个答案:

答案 0 :(得分:-1)

你正在尝试做错事

  • 单元测试应验证尽可能小的功能,例如:方法正在产生预期结果
  • NetBeans中的功能测试代表集成测试,当您将应用程序视为黑盒时进行测试

"单元测试"没有意义。 "功能测试中的功能"。 NetBeans独立处理测试文件夹,以便它们不在彼此的类路径上,这就是它在NetBeans中不起作用的原因