Тестирование Cookie

Тестирование Cookie

t.me/qa_chillout

Файлы cookie – фрагмент данных, отправляемых с веб-сайта и сохраняемых браузером на пользовательском компьютере во время просмотра сайта.

Cookie служат для:

  • запоминания информации о состоянии, например, просмотренный пользователем товар;
  • сохранения информации о действиях пользователя на сайте, например нажатие на кнопку "Купить" для покупки товара;
  • аутентификации пользователя (например, вы один раз ввели логин и пароль, эта информация запомнилась).

Типы Cookie:

Сессионные куки

Сессионные или временные куки могут существовать только в тот промежуток времени, когда пользователь находится на сайте. После того, как он закрыл окно браузера, куки удаляются.

Постоянные куки

Они удаляются либо через определенный промежуток времени, либо когда пользователь сам очистит куки. Таким образом, браузер передает их на сервер при каждом посещении сайта. Такие cookie иногда называются следящими, поскольку рекламодатели обычно записывают с их помощью предпочтения пользователя в течение долгого времени.

Persistent Cookies

Постоянные файлы cookie помогают веб-сайтам запоминать информацию и настройки при посещении их в будущем. Это приводит к более быстрому и удобному доступу, поскольку, например, пользователю не нужно снова входить в систему.

Это возможно потому, что для хранения cookie сайт одновременно использует все доступные хранилища браузера — HTTP ETag, Session Storage, Local Storage, IndexedDB. Когда программа обнаруживает отсутствие в браузере cookie-файла, информация о котором есть в других хранилищах, она тут же восстанавливает его на место, идентифицируя пользователя для сайта.

Инструменты

Существует множество инструментов для работы с cookie, но в целом можно выделить два наиболее популярных: DevTools и EditThisCookie.

DevTools

Откроем DevTools и перейдем во вкладку Application, там имеется раздел Cookie. Разверните блок cookie, а затем выберите нужный хост:

Таблица cookies содержит следующие поля:

  • Name – имя файла cookie.
  • Value – значение файла cookie.
  • Domain – домены, которым разрешено получать файл cookie.
  • Path – адрес, который должен существовать в запрашиваемом URL-адресе для отправки заголовка.
  • Expires / Max-age – дата окончания срока действия или максимальный возраст файла cookie.
  • Size – размер файла cookie в байтах.
  • HttpOnly – если true, это поле указывает, что файл cookie следует использовать только по протоколу HTTP, а изменение JavaScript запрещено.
  • Secure – если true это поле указывает, что файл cookie должен отправляться на сервер только через безопасное https-подключение.
  • SameSite – содержит strict или lax использует ли файл cookie экспериментальный атрибут Samesite .
  • SameParty – атрибут предоставляет веб-разработчикам средства для создания заметок к файлам cookie.
  • Partition key – это свойство или путь в документе, которые могут использоваться для распределения данных в документе, но при этом сохраняются вместе.
  • Priority – cодержит lowmedium (по умолчанию) или high если файл cookie использует устаревший атрибут приоритета файлов cookie .


EditThisCookie

EditThisCookie – удобный менеджер cookie. Где можно добавлять, удалять, изменять и блокировать cookie! Доступен как расширение для Google Chrome.

Кейсы при тестировании

1. Отключение файлов cookie.

  • Отключите все файлы cookie и попытайтесь использовать основные функции сайта.

2. Редактирование cookie.

  • Отредактировать файл cookie и изменить параметры на рандомные значения.

3. Удаление cookie.

  • Удаление/очищение cookie для веб-сайта, после очищения стоит проверить функционал сайта.

4. Запись/чтение cookie.

  • Проверить запись/сохранение cookie в различных браузерах.
  • Файлы cookie, созданные одним приложением, не должны быть доступны для других.
  • Предположим, что имеется cookie для домена «mx.wikipedia.org/wrong-domain-cookie», а также еще один с «en.wikipedia.org». Несмотря на то, что они находятся в одном домене, их субдомен отличается. В этом случае браузер должен отклонить этот файл cookie с другим субдоменом.

5. Отображение предупреждения об использовании cookie.

  • Правила GDPR – Европейского регламента по защите данных. Если сайт используется или может использоваться жителями Евросоюза, то он должен предупредить читателя о том, что будет применять куки для своих нужд. 
  • Проверяем соглашение с использованием cookie.
  • Проверяем отказ с использованием cookie.

6. Тестирование конфиденциальности.

  • В некоторых случаях веб-сайты собирают личные или конфиденциальные данные и сохраняют их в файлах cookie. Стоит убедиться, что личные или конфиденциальные данные, хранящиеся в файле cookie, находятся в зашифрованном формате.
  • Например, вам необходимо проверить показ попапа/обучалки, вы можете сбросить флаг показа cookie и проверить функционал еще раз.
  • Авторизация в учетку с сохраненными cookie.
  • Показ/скрытие нового функционала под cookie (например, можно отредактировать значение cookie и включить себе для теста новую фичу).


Обсудить статью, узнать больше можно в телеграм канале «Тестировщики нужны».

Report Page