是否可以将测试文件存储在模块本身的位置:
假设我有一个结构:
project\
module1\
submodule\
submodule.js
submodule.test.js
或者最好创建一个单独的位置来重复项目的结构:
project\
module1\
submodule\
submodule.js
tests\
module1\
submodule\
submodule.js
这两种变体我都见过。应该注意什么?
最佳答案
项目普遍将测试放在单独的位置,但不一定重复项目结构。测试结构通常比项目结构更扁平。
您可以在以下位置查看人们如何做的一些示例:
https://github.com/visionmedia/express
https://github.com/learnboost/mongoose
https://github.com/mbostock/d3
至于为什么这样做,它使测试更容易,因为它们都在一个文件夹中,并且使打包代码更容易,因为源文件和测试文件没有混合。它还有助于执行代码覆盖率构建等操作,因为您需要检测所有源文件但不想检测测试代码。
一般来说,每当我对项目结构有疑问时,我只会查看 GitHub 上的热门项目并大量借鉴 :)
关于JavaScript 单元测试 : where to keep test/specs files (Client and Node),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12595325/