At the beginning of my Cypress test scenario, I need to click the Agree and Proceed button on the below IFrame:
The problem is that after clicking this button during my first test run, the user's consent is stored in the local storage as you can see here:
If I re-run my test again, it will fail because the local storage is storing the user's consent, so the IFrame asking for consent won't appear.
If I manually clear the truste.consent.willistowerswatson.com
key from local storage and re-run my test, it will pass.
I need to somehow automatically clear this value.
I tried to specify the key
value with the below code, but it isn't clearing the value:
beforeEach(() => {
cy.clearLocalStorage('truste.consent.willistowerswatson.com')
})
it('First test', () => {
cy.visit('http://www.willistowerswatson.com/ICT');
cy.iframe('[id^=pop-frame]').find('.call').should('have.text', 'Agree and Proceed').click()
})
Can someone explain how I can clear this value from local storage, so my test can re-run without any issue?
You can remove this specific key by running:
localStorage.removeItem(‘truste.consent.willistowerswatson.com‘);
Alternatively, if desired, you can delete the entire localStorage as follows:
localStorage.clear();
You also find more info in the MDN Web Docs here: https://developer.mozilla.org/en-US/docs/Web/API/Window/localStorage
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With