我正试图开始对我的nodejs api进行集成/单元测试,但我无法通过supertest正确连接到我的app.js文件。
下面的代码写在我的main.test.js文件中
const app = require('../app')
const supertest = require('supertest');
const request = supertest(app)
it('posts color', async () => {
await request.post('/postColor')
.send({
"Color": "Green",
}).expect(201)
})
下面是我的app.js文件
import express from 'express';
const app = express();
export default app;
我把我的index.js文件分解成app.js和index.js两个文件。
我的index.js从app.js导入应用程序,并将其设置为监听我需要的任何端口。我的main.test.js文件从app.js导入应用程序,并根据supertest如上所示使用它。
我一直得到以下错误
TypeError:app.address不是函数
4 |
5 | it('posts color', async () => {
> 6 | await request.post('/postColor')
| ^
我通过在main.test.js文件中添加以下内容来解决此问题:
const app = require('../app').default