diff --git a/test/functional/services/remote/remote.ts b/test/functional/services/remote/remote.ts index b30a0e50886d1..380c33e93ad90 100644 --- a/test/functional/services/remote/remote.ts +++ b/test/functional/services/remote/remote.ts @@ -38,6 +38,17 @@ export async function RemoteProvider({ getService }: FtrProviderContext) { const coveragePrefix = 'coveragejson:'; const coverageDir = resolve(__dirname, '../../../../target/kibana-coverage/functional'); let logSubscription: undefined | Rx.Subscription; + type BrowserStorage = 'sessionStorage' | 'localStorage'; + + const clearBrowserStorage = async (storageType: BrowserStorage) => { + try { + await driver.executeScript(`window.${storageType}.clear();`); + } catch (error) { + if (!error.message.includes(`Failed to read the '${storageType}' property from 'Window'`)) { + throw error; + } + } + }; const { driver, By, until, consoleLog$ } = await initWebDriver( log, @@ -128,8 +139,8 @@ export async function RemoteProvider({ getService }: FtrProviderContext) { .manage() .window() .setRect({ width, height }); - await driver.executeScript('window.sessionStorage.clear();'); - await driver.executeScript('window.localStorage.clear();'); + await clearBrowserStorage('sessionStorage'); + await clearBrowserStorage('localStorage'); }); lifecycle.on('cleanup', async () => {