在项目中组织JUnit测试

Rob*_*ker 38 java junit

您认为在项目中组织JUnit测试的最佳实践是什么?为什么?例如,您是否将测试放在他们测试的类旁边?你把它们放在一个单独但平行的包装结构中吗?您是否完全使用不同的组织策略?

Bil*_*ard 37

出于几个原因,我使用单独但并行的包结构.

  1. 它使测试的组织方式与应用程序代码相同.
  2. 我可以轻松地构建应用程序文件以进行分发.
  3. 测试代码仍然可以访问我的应用程序代码.
  4. 将测试代码与应用程序代码混合在一起并不是一团糟.


Chr*_*est 8

我将测试放在一个单独但相似/并行的包结构中.这就是Maven喜欢的东西,它也适用于IDE.我喜欢这种方式,因为我没有将我的测试代码与我的应用程序代码混淆,但我仍然可以访问包私有的东西以进行模拟和状态验证.


Ale*_*rov 5

只需使用Maven.使用maven,您可以为项目创建默认结构:

mvn archetype:create -DgroupId=com.yoyodyne -DartifactId=UberApp
Run Code Online (Sandbox Code Playgroud)

这将创建Maven的标准目录布局,其中包含单元测试以及主项目的空间.使用maven,您可以运行单元测试而无需将其打包到jar中,您可以构建一个仅包含应用程序的jar.您还可以为运行,测试和编译时间提供不同的类路径和不同的依赖项.

我觉得最令人不安的是看到周围这么少的人实际上正在使用Maven(或者至少是Ant,尽管我更喜欢Maven用于依赖处理.)