Skip to main content

setCookies

Sets one or more cookies for the current page. Make sure you are on the page that should receive the cookie. You can't set a cookie for an arbitrary page without being on that page.

Usage
browser.setCookies({ name, value, path, domain, secure, httpOnly, expiry, sameSite })
Parameters
NameTypeDetails
cookieArray<WebDriverCookie>, WebDriverCookiecookie object or object array.
cookie.name
optional
StringThe name of the cookie.
cookie.value
optional
StringThe cookie value.
cookie.path
optional
StringThe cookie path. Defaults to "/" if omitted when adding a cookie.
cookie.domain
optional
StringThe domain the cookie is visible to. Defaults to the current browsing context’s active document’s URL domain if omitted when adding a cookie.
cookie.secure
optional
BooleanWhether the cookie is a secure cookie. Defaults to false if omitted when adding a cookie.
cookie.httpOnly
optional
BooleanWhether the cookie is an HTTP only cookie. Defaults to false if omitted when adding a cookie.
cookie.expiry
optional
NumberWhen the cookie expires, specified in seconds since Unix Epoch. Must not be set if omitted when adding a cookie.
cookie.sameSite
optional
StringWhether the cookie applies to a SameSite policy. Defaults to None if omitted when adding a cookie. Can be set to either "Lax" or "Strict".
Example
setCookies.js
it('should set a cookie for the page', async () => {
await browser.url('/')

// set a single cookie
await browser.setCookies({
name: 'test1',
value: 'one'
// The below options are optional
// path: '/foo', // The cookie path. Defaults to "/"
// domain: '.example.com', // The domain the cookie is visible to. Defaults to the current browsing context’s active document’s URL domain
// secure: true, // Whether the cookie is a secure cookie. Defaults to false
// httpOnly: true, // Whether the cookie is an HTTP only cookie. Defaults to false
// expiry: 1551393875 // When the cookie expires, specified in seconds since Unix Epoch
})

// set multiple cookies
await browser.setCookies([
{name: 'test2', value: 'two'},
{name: 'test3', value: 'three'}
])

const cookies = await browser.getCookies()
console.log(cookies);
// outputs:
// [
// {name: 'test1', value: 'one', domain: 'www.example.com'},
// {name: 'test2', value: 'two', domain: 'www.example.com'},
// {name: 'test3', value: 'three', domain: 'www.example.com'}
// ]
});

Welcome! How can I help?

WebdriverIO AI Copilot