Supertest不使用调用.render()的路由

时间:2017-02-27 16:16:34

标签: javascript node.js express testing supertest

我向用户left: 10px添加right: 10px后,supertest无法使用我的应用中调用app.use(flash())的任何路由。测试只是超时,它不会执行express-flashres.render()回调。

只调用end的静态路由和路由按预期工作。

在浏览器中,我的应用程序适用于所有路线。

我开始收听expect回调以确保没有渲染错误,并且在使用正确的渲染模板进行测试期间调用回调很好。

导致测试超时的原因是什么?

这是我设置的示例路由,但不起作用。

res.send

这是我的规格:

res.render

1 个答案:

答案 0 :(得分:0)

嗯,最后问题是我的会话存储在MongoDB上,而且因为我在嘲笑Mongo,它永远不会得到连接,所以它会挂起。

这是罪魁祸首。

const session = expressSession({
    secret: "double rainbow",
    store: new MongoStore({ mongooseConnection: database.getConnection() }),
    resave: false,
    saveUninitialized: false
});

我最终将这个MongoStore创建移动到另一个模块并在测试期间模拟它。