在Cypress测试中,如何在新的Next.js 13应用目录中模拟NextAuth中路由API/auth/session的会话对象?

mbjcgjjk  于 2023-06-29  发布在  其他
关注(0)|答案(1)|浏览(115)

我目前正在使用新的Next.js 13应用程序目录和next-auth进行身份验证。会话是在服务器端生成的,所以我无法访问Cypress中的会话对象。我想在Cypress中模拟会话对象,这样我就可以在不登录的情况下测试应用程序的功能。
我尝试了以下方法来模拟会话对象:

  • 使用cy.intercept拦截/api/auth/session路由。但是,这只拦截来自客户端请求的路由,而不是服务器端请求。
  • 使用next-auth中的客户端signIn方法并提供凭证(我使用凭证登录)。然而,这也不管用。我希望有人能帮助我弄清楚如何在Cypress中模拟会话对象,以便我可以测试应用程序的功能。

以下是有关我的环境的一些其他详细信息:

  • 我正在使用NextAuth v4.22.1
  • 我使用的是Next.js v13.4.4
  • 我用的是Cypress v12.3.0
dauxcl2d

dauxcl2d1#

我建议你去看看都市固体废物。我在每一个项目中都使用它。
https://mswjs.io/

相关问题