JavaScript单元测试:保存测试/规范文件的位置(客户端和节点)

时间:2012-09-26 05:54:07

标签: javascript unit-testing node.js

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

假设我有一个结构:

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

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

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

我见过两种变体。应该考虑哪些因素?

1 个答案:

答案 0 :(得分:6)

项目非常普遍地将测试保存在一个单独的位置,但不必重复项目结构。测试结构通常比项目结构更平坦。

你可以看到人们如何做到这一点的一些例子:
https://github.com/visionmedia/express
https://github.com/learnboost/mongoose
https://github.com/mbostock/d3

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

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