I'm building a single page web application (SPA) with server side rendering (SSR).
We have a node backend API which is called both from the node server during SSR and from the browser after initial rendering.
I want to write e2e tests that configures API responses (like with nock
) and work both with browser calls and SSR server calls. some pseudo-code :
it('loads some page (SSR mode)', () => {
mockAPI.response('/some-path', {text: "some text"}); // here i configure the mock server response
browser.load('/some-other-page'); // hit server for SSR response
expect(myPage).toContain('some text');
})
it('loads some other page (SPA mode)', () => {
mockAPI.response('/some-path', {text: "some other text"}); // here i configure another response for the same call
browser.click('#some-link'); // loads another page client side only : no SSR here
expect(myPage).toContain('some other text');
})
Currently Cypress allows me to mock fetch on the browser but not on the server.
Is there anything to achieve that ? Preferably with node libs.
Aucun commentaire:
Enregistrer un commentaire