小编tho*_*leb的帖子

开玩笑,ES6 模块“不提供导出命名”

我有一个带有 CRUD API(带有sequelize)的 Express 应用程序,我想用 Jest 测试它。我对单元测试还很陌生,所以我遵循Jest 网站推荐的本指南

\n

我遇到的问题是我的应用程序是使用 ES6 模块构建的,而 Jest ES6 模块是实验性的,它似乎没有“导入”包。

\n

我有这个测试(取自指南)

\n
import request from \'supertest\';\nimport app from \'../app\';\n\ndescribe(\'Test the root path\', () => {\n    test(\'It should response the GET method\', done => {\n        request(app)\n            .get(\'/\')\n            .then(response => {\n                expect(response.statusCode).toBe(404);\n                done();\n            });\n    });\n});\n
Run Code Online (Sandbox Code Playgroud)\n

当我启动它时(NODE_OPTIONS=--experimental-vm-modules npx jest我必须遵循这个笑话维基页面),它说

\n

\'sequelize\' does not provide an export named \'DataTypes\'当我正常启动我的应用程序时(比如npm start)时,它工作正常,没有任何问题。

\n

(完整的错误日志):

\n
(node:49576) ExperimentalWarning: …
Run Code Online (Sandbox Code Playgroud)

unit-testing node.js express jestjs

3
推荐指数
1
解决办法
4880
查看次数

标签 统计

express ×1

jestjs ×1

node.js ×1

unit-testing ×1