Перейти к основному содержимому

saveState

Обзор

Команда для сохранения состояния страницы (cookies, local и session storages).

warning

Если вы используете webdriver automation protocol вы должны установить webSocketUrl: true в desiredCapabilities для браузера в конфиге. Для devtools protocol не нужно дополнительных настроек.

Использование

Команда вернёт объект включающий cookie, localStorage и sessionStorage. Используя параметры вы можете выключить сохранение отдельных данных. Так же вы можете указать параметр path и получить файл с данными. После сохранения вы можете использовать результат в команде restoreState.

import type { SaveStateData } from "testplane";

const stateDump: SaveStateData = await browser.saveState({
path: "./stateDump.json",
cookies: true,
localStorage: true,
sessionStorage: true,
});

Параметры команды

ИмяТипОписание
pathStringПуть где будет сохранён файл с данными.
cookiesBooleanВключить сохранение кук (true по умолчанию).
localStorageBooleanВключить сохранение localStorage (true по умолчанию).
sessionStorageBooleanВключить сохранение sessionStorage (true по умолчанию).
cookieFilter(cookie: Cookie) => booleanФункция для фильтрации кук, принимает объект куки и возвращает boolean.

Примеры использования

Сохранение данных в файл.

it("test", async ({ browser }) => {
await browser.url("https://github.com/gemini-testing/testplane");

await browser.saveState({
path: "./stateDump.json",
cookieFilter: ({ domain }) => domain === ".example.com",
});
});