gpt4 book ai didi

javascript - 使用 Mocha & Chai 进行 Node 测试 -> 错误.. TypeError : app. 地址不是函数

转载 作者:太空宇宙 更新时间:2023-11-04 02:49:34 27 4
gpt4 key购买 nike

尝试在 Node 中测试基本 GET 路由时出现以下错误

TypeError: app.address is not a function

我正在检索我想要测试的应用代码,但我在代码中没有看到任何对“地址”错误的引用,因此我不知道要修复什么。

有人有什么建议吗?

下面是我的单元测试

let chai = require('chai');
let chaiHttp = require('chai-http');
let app = require('../src/app');
let should = chai.should();

chai.use(chaiHttp);
describe('/POST getRating', () => {
it('it should not POST a book without pages field', (done) => {
chai.request(app)
.get('/')
// .send(testData1)
.end((err, res) => {
console.log('ERROR', err);
res.should.have.status(200);
res.body.should.be.a('string');
done();
});
});

});

下面是我的 app.js 代码

import express from 'express';
import mongoose from 'mongoose';
import bodyParser from 'body-parser';
import config from './config';
import http from 'http'
mongoose.Promise = Promise;
import rating from './components';

const cors = config.cors
const mongouri = config.mongoURI;
mongoose.connect(mongouri);

const app = express();

app.use(cors.cors(cors.origins));

app.use(bodyParser.json());
app.use(bodyParser.urlencoded({ extended: false }));


app.get("/", (req, res) => res.json({message: "Welcome to our Bookstore!"}));

app.use('/api/rating', rating);

const port = normalizePort(process.env.PORT || '3000');
app.set('port', port);

const server = http.createServer(app);

server.listen(port);
server.on('listening', onListening);

function normalizePort(val) {
let port = parseInt(val, 10);

if (isNaN(port)) {
return val;
}

if (port >= 0) {
return port;
}

return false;
}

function onListening() {
var addr = server.address();
var bind = typeof addr === 'string'
? 'pipe ' + addr
: 'port ' + addr.port;
console.log('Listening on ' + bind);
}

export default app;

最佳答案

这可能是由于转译造成的问题。尝试:

let app = require('../src/app').default;

关于javascript - 使用 Mocha & Chai 进行 Node 测试 -> 错误.. TypeError : app. 地址不是函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42515039/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com