網站搜尋

typescript - Cypress 瀏覽器狀態會保持登入。如何阻止這種情況發生?


我為一個需要登入的應用程式編寫了多個 Cypress E2E 測試。我已經編寫了成功的測試,但這些測試現在開始失敗。測試預期在開始時應用程式是已登出的,否則在嘗試找到電子郵件和密碼欄位時會失敗。當 Cypress 打開其瀏覽器視窗時,應用程式已經登入。之前,我只需透過 Cypress 瀏覽器登出並重新執行測試即可。現在它再次打開時,好像仍保持登入狀態。

我如何防止 Cypress 瀏覽器視窗一開啟就已經登入頁面?有沒有辦法刷新應用程式的狀態,讓它忘記之前的任何登入?

答案#1

也試著清理 indexedDB:

indexedDB.deleteDatabase('firebaseLocalStorageDb');

答案#2

僅供參考,我在將 Cypress 與 Firebase/Firestore 配對時也遇到了相同的問題。經過一些調查,我發現可以配置身份驗證持久性。參見這篇文章:https://firebase.google.com/docs/auth/web/auth-state-persistence