我有一个带有 CRUD API(带有sequelize)的 Express 应用程序,我想用 Jest 测试它。我对单元测试还很陌生,所以我遵循Jest 网站推荐的本指南。
\n我遇到的问题是我的应用程序是使用 ES6 模块构建的,而 Jest ES6 模块是实验性的,它似乎没有“导入”包。
\n我有这个测试(取自指南)
\nimport 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});\nRun Code Online (Sandbox Code Playgroud)\n当我启动它时(NODE_OPTIONS=--experimental-vm-modules npx jest我必须遵循这个笑话维基页面),它说
\'sequelize\' does not provide an export named \'DataTypes\'当我正常启动我的应用程序时(比如npm start)时,它工作正常,没有任何问题。
(完整的错误日志):
\n(node:49576) ExperimentalWarning: …Run Code Online (Sandbox Code Playgroud)