В чём разница между cookies и кэшем (cache) браузера?

«В чём разница между cookies и кэшем (cache) браузера?» — вопрос из категории Веб-тестирование, который задают на 10% собеседований QA Тестировщик. Ниже — развёрнутый ответ с разбором ключевых моментов.

Ответ

Cookies и кэш браузера — это два разных механизма хранения данных на стороне клиента с разными целями.

Критерий Cookies Кэш (Cache)
Назначение Хранение пользовательских или сессионных данных для сервера (логин, настройки, идентификатор сессии). Локальное хранение статических ресурсов (изображения, CSS, JS-файлы) для ускорения загрузки страниц.
Передача данных Автоматически отправляются на сервер с каждым HTTP-запросом в заголовках (Cookie:). Не передаются на сервер. Браузер использует локальные копии.
Срок хранения Могут быть сессионными (удаляются при закрытии браузера) или постоянными (с заданным expires). Управляется браузером (может очищаться автоматически или вручную).
Объём Ограничены (~4 КБ на домен). Может занимать значительное место на диске (десятки/сотни МБ).

Пример работы с cookies в JavaScript:

// Установка cookie
document.cookie = "sessionId=abc123; expires=Fri, 31 Dec 2024 23:59:59 GMT; path=/";
// Чтение всех cookies
console.log(document.cookie); // Выведет: "sessionId=abc123"

При тестировании важно проверять корректность установки, хранения и отправки cookies, а также очистку кэша и его влияние на отображение контента.