我們的應用程式使用瀏覽器會話存盤來存盤將由子視窗讀取的資訊。
有一個示例場景:用戶單擊鏈接以打開子視窗。使用 window.open() 打開新視窗,然后我們將資訊存盤在子會話存盤中。加載子視窗時,它將從會話存盤中獲取資訊。
問題:當子視窗嘗試從會話存盤中獲取值時(使用:window.sessionStorage.getItem('my_key')),它回傳 null 并且由于此應用程式在 TestCafe 中運行時無法正常作業并且測驗失敗。
在 chrome 開發工具中,我可以看到會話存盤具有此值。我列印到控制臺視窗.sessionStorage 下的內容并回傳代理物件(見截圖):

我檢查并提供給 window.sessionStorage.getItem 的密鑰是正確的,而且我注意到在“內部 - > nativeStorage”下是我正在尋找的值(在螢屏截圖上不可見,因為我無法顯示此資料)。
我不知道這是一個錯誤還是我只需要配置一些東西,但我沒有在谷歌中找到有關它的資訊。
是否可以使 TestCafe 在這種情況下按預期作業?如果是,如何?
uj5u.com熱心網友回復:
發生這種情況是因為TestCafe無法在同一視窗的新選項卡中打開頁面,并且在新視窗中打開頁面會創建一個新的session Storage. 要解決此問題,您可以使用disableMultipleWindows。
轉載請註明出處,本文鏈接:https://www.uj5u.com/qiye/447572.html
