8

是否可以将测试文件存储在模块本身的位置:

假设我有一个结构:

project\
  module1\
    submodule\
       submodule.js
       submodule.test.js

或者最好创建一个单独的位置来重复项目的结构:

project\
  module1\
    submodule\
       submodule.js
tests\
  module1\
    submodule\
       submodule.js

我见过这两种变体。应该考虑什么?

4

1 回答 1

15

项目相当普遍地将测试保存在单独的位置,但不一定重复项目结构。测试结构通常比项目结构更扁平。

您可以在以下位置查看人们如何做到这一点的一些示例:
https ://github.com/visionmedia/express
https://github.com/learnboost/mongoose
https://github.com/mbostock/d3

至于为什么这样做,它使执行测试更容易,因为它们都在一个文件夹中,并且由于源文件和测试文件没有混合,所以打包代码更容易。它在执行代码覆盖构建等操作时也很有帮助,因为您需要检测所有源文件但又不想检测测试代码。

一般来说,每当我对项目结构有疑问时,我都会查看 GitHub 上的热门项目并大量借用 :)

于 2012-09-26T05:57:27.787 回答