node.js - Mocha 测试并需要缓存问题
问题描述
我试图在某种程度上将我的测试分成unit
,integration
和qa_requires
文件夹。所以我想到了这个结构:
| /app
| | ...
| /tests
| | unit\
| | | file1.js
| | | file2.js
| | integration\
| | | file1.js
| | | file2.js
| | qa_requires\
| | | file1.js
| | | file2.js
AFAIK,节点中有一个缓存机制来处理这里读取的要求,但是文件位于不同的文件夹中,我无法告诉节点我做错了什么以避免需要所有测试。
问题:为什么如果我使用不带参数 () 的 mocha 调用测试 /tests 下的所有文件,node_modules/.bin/mocha
它会找到/test/unit/file1.js
并且仅此/tests/integration/file2.js
而已?
解决方案
好吧,经过多次尝试(并写了这篇文章),我修复了目录结构。
From To
| /app | /app
| | ... | | ...
| /tests | /tests
| | file1.js | | unit\
| | file2.js | | | file1.js
| | | | | file2.js
| | integration\ | | integration\
| | | file1.js | | | file1.js
| | | file2.js | | | file2.js
| | qa_requires\ | | qa_requires\
| | | file1.js | | | file1.js
| | | file2.js | | | file2.js
似乎tests
根目录中的文件正在影响integration
并qa_requires
包含。--recursive
在处理深层目录时需要使用 @Owner 的建议。
推荐阅读
- java - JUnit Java Instant 依赖测试
- javascript - 具有 Azure AD B2C 授权的 API 的 fetch() 方法示例
- c++ - 将对象存储在多个 shared_ptr 列表中
- html - Contact Form 7 (wordpress) 中的评论部分在移动设备上不起作用
- ios - 如何检测iOS中是否按下了某个键?
- c++ - 检测 keyPressEvent 上的插入符号 ( ^ ) 键 - Qt C++
- api - Eventbrite API 列表事件 403
- python - 使用pywin32转到word doc中的指定页面
- cython - 在 Cython 中键入字符串列表
- ios - React-Native:在项目或这些目录中找不到 React