我在使用 Mocha/Chai 和 TypeScript 设置 WebStorm 时遇到问题。
我安装了 mocha 并在我的 package.json
中设置了一个测试脚本,如下所示
"test": "env TS_NODE_COMPILER_OPTIONS='{\"module\": \"commonjs\" }' mocha -r ts-node/register 'tests/**/*.ts'"
当我运行 npm test
时,测试运行并且一切正常。
但是,WebStorm 无法识别describe
和it
。即使我运行的是 WebStorm 2020.3,我也遵循 this post 中的解决方案。没有任何成功。
此外,当我在 WebStorm 中使用运行器时,我收到以下错误:
ERROR: Error: Cannot find module 'ts-node/register'
在 WebStorm 的 Runner 配置中,我添加了以下内容:
- 环境变量:
env TS_NODE_COMPILER_OPTIONS='{"module": "commonjs"}'
- 额外的 Mocha 选项:
mocha -r ts-node/register
但这也没有帮助。
我错过了什么?
[编辑]
感谢 lena 的评论,我发现 Mocha 包指向了错误的项目,所以我修复了它。不幸的是我现在收到这个错误:
最佳答案
尝试更改环境变量的定义方式 - 删除值周围的单引号,这就是 mocha 提示的问题。只需将其设置为 TS_NODE_COMPILER_OPTIONS={"module":"commonjs"}
:
对我来说效果很好
关于typescript - 使用 Mocha、Chai 和 TypeScript 设置时,WebStorm 找不到 ts-node/module 和描述定义,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/66779087/