тестирование маршрутов expressjs с использованием nextjs - PullRequest
0 голосов
/ 19 сентября 2019

Я пытаюсь использовать nextjs в своем приложении, смог заставить его работать с Express, как ожидалось, но застрял с тестами.Как протестировать те приложения, которые завернуты в nextjs?

server.js

const next = require('next')
const dev = process.env.NODE_ENV !== 'production'
const nextApp = next({ dev })
    const app = express();
    nextApp.prepare()
      .then(() => {
        const userRoutes = require("./routes/userRoutes")(nextApp);
        app.use("/", userRoutes);


        app.get("/test", (req, res) => {
          const actualPage = '/index'
          const query = { id: 'reqaramshhjjkkllvvoooo', test: 'testPropertyNN' } 
          nextApp.render(req, res,  '/index', query);
        })


        server =  app.listen(PORT)

    })
    .catch((ex) => {
      console.error(ex.stack)
      process.exit(1)
    })

    module.exports = app;

и протестируйте его следующим образом, но, получив 404, как следует настроить jest вместе со следующим тестом?Я просто переключаюсь с create-реагировать-app на nextjs, но проваливаюсь при тестировании (без следующего управления это работает), у кого-нибудь есть пример или какой-либо ключ, чтобы получить эту работу?

  it('should get it workin', done => {
    agent
      .get(`/test`)
      .end((err, res) => {
        should.not.exist(err);
        res.status.should.equal(200);
        done();
      })
  })
...