testerlib | Неотсортированное

Telegram-канал testerlib - Библиотека тестировщика | QA, тестирование, quality assurance, manual testing, autotesting, ручное тестирование, автотесты

8815

Все самое полезное для тестировщика в одном канале. По рекламе: @proglib_adv Учиться у нас: https://proglib.io/w/12538d6f Работать у нас: https://job.proglib.io/ Наши каналы: https://t.me/proglibrary/9197

Подписаться на канал

Библиотека тестировщика | QA, тестирование, quality assurance, manual testing, autotesting, ручное тестирование, автотесты

🍩 Как проверять данные после миграции на новую схему базы данных

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

1️⃣ Проверка целостности данных:

• Убедитесь, что количество записей в старой и новой схеме одинаково.

• Проверьте сохранность важных данных (например, ID пользователей, транзакции).

• Проверьте внешние ключи и связи.

2️⃣ Проверка структуры таблиц:

• Убедитесь, что типы данных в новой схеме соответствуют старым.

• Проверьте индексы и ограничения на уникальность.

3️⃣ Проверка на пустые значения и дубли:

• Проверьте таблицы на наличие пустых значений в обязательных полях и дубликатов.

4️⃣ Тестирование приложения:

• Проверьте запросы на корректность и производительность.

• Убедитесь, что все функции приложения работают корректно с новой схемой.

5️⃣ Проверка резервных копий:

• Убедитесь, что данные можно восстановить из резервных копий и что система создает новые бекапы.

💡 Советы:

— Автоматизируйте проверки целостности данных и структуры схемы.

— Протестируйте систему под нагрузкой после миграции.

Дополнительно рекомендуем почитать:

🔗 Полное руководство по тестированию миграции данных от BrowserStack

🐸 Библиотека тестировщика

#буст

Читать полностью…

Библиотека тестировщика | QA, тестирование, quality assurance, manual testing, autotesting, ручное тестирование, автотесты

💻 Как тестировать API на производительность и нагрузку

Тестирование API на производительность важно для проверки его устойчивости при высокой нагрузке. Это помогает убедиться, что приложение выдержит множество запросов без потери качества.

Промпт:

How can I test the performance and load handling of my API under high traffic conditions? What tools and strategies should be used to simulate heavy loads and measure response times?


Чем полезен:

➡️ Помогает определить пределы производительности API

➡️ Обеспечивает понимание того, как API справляется с высокой нагрузкой

➡️ Рекомендует инструменты для стресс-тестирования и мониторинга откликов

🐸 Библиотека тестировщика

#буст

Читать полностью…

Библиотека тестировщика | QA, тестирование, quality assurance, manual testing, autotesting, ручное тестирование, автотесты

🤩 Игры — ваша страсть? Почему бы не превратить это в карьеру?

Присоединяйтесь к курсу «Game QA Engineer» от OTUS! Мы научим вас тестировать игры на всех платформах — от мобильных устройств до консолей (iOS, Android, PlayStation, Xbox, Switch, PC). Разберём всё от анализа требований до тестирования графики и баланса игры.

📈 Освойте ключевые инструменты тестирования, от перехвата трафика до эмуляторов, и научитесь создавать баг-репорты для улучшения игр. С помощью OTUS вы получите все необходимые навыки для успешной карьеры в GameDev.

Пройдите короткое вступительное тестирование, получите скидку на курс и начните свою карьеру в мире видеоигр: https://clc.to/GXGOwA

Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576, www.otus.ru

Читать полностью…

Библиотека тестировщика | QA, тестирование, quality assurance, manual testing, autotesting, ручное тестирование, автотесты

👍 Топ-вакансий для тестировщиков за неделю

Junior QA Manual — от 800 до 1000 $, удаленно

QA Engineer — от 86 000 до 149 000 ₽, удаленно (Екатеринбург)

QA Manual — от 190 000 до 230 000 ₽, удаленно (Москва)

QA-инженер — 125 000 ₽, гибрид (Москва)

Ведущий инженер по автоматизированному тестированию (Python) — от 455 000 ₽, удаленно (Москва)

➡️ Еще больше топовых вакансий — в нашем канале QA jobs

🐸 Библиотека тестировщика

#свежак

Читать полностью…

Библиотека тестировщика | QA, тестирование, quality assurance, manual testing, autotesting, ручное тестирование, автотесты

📌 Подборка шпаргалок для QA

Собрали полезные материалы: техники тест-дизайна, сниппеты для Postman, команды Selenium, базовые security-чеклисты и heuristics для ручного и исследовательского тестирования.

➡️ Postman Scripts

🔘 Сборник скриптов: создание тестов на JS, работа с переменными, проверка response‑хедеров и времени ответа — актуально для API- и микросервис-тестирования.

➡️ Selenium WebDriver

🔘 Обновлённая шпаргалка по последней версии: команды, локаторы (CSS, XPath, Relative Locators), waiting strategies, работа с окнами, фреймами и алертами.

➡️ OWASP Best Practices

🔘 Лаконичный обзор свежих cheat sheets по ключевым уязвимостям: XSS, CSRF, insecure direct access и другие. Быстрый ориентир для security-aware тестировщика.

➡️ Manual Testing Overview

🔘 Чеклист по типам тестирования (функциональное, регрессия, exploratory и т.д.), уровням (unit, интеграция, E2E) и метрикам качества (defect density, DRE, coverage).

➡️ Test Design Techniques

🔘 Простой и понятный PDF, охватывающий black-box, white-box и опытные техники дизайна тестов.

🐸 Библиотека тестировщика

#свежак

Читать полностью…

Библиотека тестировщика | QA, тестирование, quality assurance, manual testing, autotesting, ручное тестирование, автотесты

💰 Джун в тестировании

Когда на рынке много новичков, встает вопрос: сколько платить, чтобы мотивировать, но не перегрузить компанию?

Почему платить больше — это выгодно:

— Начинающие специалисты с хорошей зарплатой быстрее развиваются и осваивают новые инструменты

— Высокая ставка снижает вероятность перехода к конкуренту

— Хорошая оплата помогает быстрее раскрыть потенциал, даже если опыта мало

⛔️ Почему платить меньше — это разумно:

— Недостаток опыта увеличивает расходы на обучение

— На рынке много начинающих, не все оправдают высокую зарплату сразу

— На старте новичок часто зависит от наставника, что может быть неэффективно для проекта

💬 А как вы считаете? Сколько должна быть зарплата у джуна, чтобы и компания, и сотрудник были довольны?

Поделитесь мнением в комментариях! ✏️

🐸 Библиотека тестировщика

#междусобойчик

Читать полностью…

Библиотека тестировщика | QA, тестирование, quality assurance, manual testing, autotesting, ручное тестирование, автотесты

👍 Ключевые навыки QA в 2025 году

Чтобы быть востребованным специалистом, важно развивать не только базовые знания, но и ключевые навыки.

В карточках собраны самые важные из них:

➡️ Автоматизация с Selenium и Java для ускорения тестирования

➡️ Знание API и баз данных для эффективной работы с серверными приложениями

➡️ Работа в Agile/Scrum для улучшения качества и скорости разработки

➡️ Ручное тестирование как основа стабильной работы на всех этапах

➡️ Английский язык как обязательное условие для карьеры в международных проектах

Развивайте эти навыки, и вы станете неотъемлемой частью успешной команды!

🐸 Библиотека тестировщика

Читать полностью…

Библиотека тестировщика | QA, тестирование, quality assurance, manual testing, autotesting, ручное тестирование, автотесты

😐 Реальная работа глазами джуна

Курсы дают базу — термины, подходы, инструменты. Это нужная отправная точка. Но когда начинаешь работать, понимаешь: теория — это только часть картины.

Вопрос от подписчика:

«На курсах всё было красиво: вот тебе баг-репорт, вот тест-кейс, вот список требований. А на работе с первого дня — никаких требований, всё на словах, окружение нестабильное, половина багов — на ощущениях. Я вообще не понимал, с чего начинать. Было ощущение, что я попал в хаос. У кого тоже так было в начале?»


А у вас что оказалось гораздо сложнее, чем на курсах? Что реально стало челленджем на проекте?

P.S. Если хотите задать вопрос, заполните нашу гугл-форму. Это займет 5 минут.

🐸 Библиотека тестировщика

#междусобойчик

Читать полностью…

Библиотека тестировщика | QA, тестирование, quality assurance, manual testing, autotesting, ручное тестирование, автотесты

Вам чай с сахаром или моими слезами 🥲

🐸 Библиотека тестировщика

#развлекалово

Читать полностью…

Библиотека тестировщика | QA, тестирование, quality assurance, manual testing, autotesting, ручное тестирование, автотесты

Вопросы по HTTP-методам: PUT, POST и PATCH

На собеседованиях по тестированию веб-приложений вас могут спросить, чем отличаются эти HTTP-методы.
В карточках разберем:

➡️ Как работает метод PUT

➡️ Как POST используется для создания ресурсов

➡️ Когда лучше применять PATCH для частичного обновления

Важно понимать, когда и как использовать каждый из этих методов, так как они влияют на обработку данных на сервере ❗️

🐸 Библиотека тестировщика

Читать полностью…

Библиотека тестировщика | QA, тестирование, quality assurance, manual testing, autotesting, ручное тестирование, автотесты

👍 Топ-вакансий для тестировщиков за неделю

Senior QA Engineer — 2 500 —‍ 3 500 $, удаленно

Junior QA engineer (нагрузочное тестирование) — офис (Москва)

Senior QA Automation Engineer — от 2 000 $, удаленно (Москва)

Инженер нагрузочного тестирования — 200 000 —‍ 255 000 ₽, гибрид (Москва)

Тестировщик мобильных игр — удаленно (Санкт-Петербург)

➡️ Еще больше топовых вакансий — в нашем канале QA jobs

🐸 Библиотека тестировщика

#свежак

Читать полностью…

Библиотека тестировщика | QA, тестирование, quality assurance, manual testing, autotesting, ручное тестирование, автотесты

🧠 Задача: поведение интерфейса

Вы тестируете веб-приложение на разных устройствах.
При ширине окна 768px интерфейс переключается с десктопной версии на мобильную: меню скрывается за иконку, блоки выстраиваются в колонку.

Что с наибольшей вероятностью определяет это поведение

🐸 Библиотека тестировщика

#междусобойчик

Читать полностью…

Библиотека тестировщика | QA, тестирование, quality assurance, manual testing, autotesting, ручное тестирование, автотесты

😵‍💫 Думает как тестировщик, действует как скрипт

Подсказка: если запускается сам и проверяет, что всё зелёное — это оно.

Что за функционал зашифрован? ✏️

🐸 Библиотека тестировщика

#междусобойчик

Читать полностью…

Библиотека тестировщика | QA, тестирование, quality assurance, manual testing, autotesting, ручное тестирование, автотесты

💡 Как вывести резюме тестировщика в топ на HeadHunter

Вы знаете, как устроен баг-репорт, умеете писать автотесты и работать с API — но ваше резюме на HH никто не смотрит? Значит, пора перестать ждать и начать играть по правилам алгоритма.

Что в карточках:

Почему важно указать «Москву» даже на удалёнке

Когда лучше обновлять резюме, чтобы быть в топе

Какие ключевые слова повышают шансы QA-кандидата

Что дает кнопка «Хочу здесь работать»

И как видеовизитка может выделить вас среди других

Если хотите больше откликов — научитесь быть видимым для системы.

🔗 Полный текст статьи — по ссылке

🐸 Библиотека тестировщика

Читать полностью…

Библиотека тестировщика | QA, тестирование, quality assurance, manual testing, autotesting, ручное тестирование, автотесты

Как относитесь к созданию своего жпт не через конструктор, а хардкорно через код?

🔥 — я своего завайбкодил

🏃‍♀️ Ссылка на курс

Читать полностью…

Библиотека тестировщика | QA, тестирование, quality assurance, manual testing, autotesting, ручное тестирование, автотесты

А потом стопицот найденных багов 😎😎

🐸 Библиотека тестировщика

#развлекалово

Читать полностью…

Библиотека тестировщика | QA, тестирование, quality assurance, manual testing, autotesting, ручное тестирование, автотесты

🔍 JUnit или TestNG: что выбрать для автоматизации тестирования

Выбор между JUnit и TestNG зависит от масштабов проекта и потребностей команды. Каждый фреймворк имеет свои преимущества.

Что в карточках:

➡️ Почему JUnit — это лучший выбор для новичков и простых тестов

➡️ Когда TestNG будет более подходящим фреймворком для масштабируемых проектов

➡️ Как выбрать между этими фреймворками в зависимости от потребностей вашего проекта

Читайте и выбирайте, что лучше для вашего тестирования! ✌️

🐸 Библиотека тестировщика

Читать полностью…

Библиотека тестировщика | QA, тестирование, quality assurance, manual testing, autotesting, ручное тестирование, автотесты

🌸 Инструмент недели: быстрое создание моков API с Mockoon

Mockoon — десктопное приложение для создания локальных API-симуляторов. Позволяет настроить поведение серверов за пару минут, без кода и зависимости от бэкенда.

Почему стоит использовать:

➡️ Визуальный редактор — настраивай маршруты, методы, ответы, заголовки и задержки через удобный интерфейс.

➡️ Сценарии поведения — реализуй случайные ошибки, переключение ответов, условия и динамику через переменные.

➡️ Полная автономность — работает без интернета, запускается локально и не требует внешней инфраструктуры.

➡️ CLI-режим — подходит для автотестов и CI-сред, где важно поднять мок без интерфейса.

Как использовать:

1) Скачайте с mockoon или установите через brew.

2) Создайте окружение, добавьте маршруты с нужными ответами.

3) Запустите сервер — он начнёт принимать запросы на заданном порту.

🐸 Библиотека тестировщика

#буст

Читать полностью…

Библиотека тестировщика | QA, тестирование, quality assurance, manual testing, autotesting, ручное тестирование, автотесты

🥖 Валидация email-адреса

Вы тестируете форму регистрации. В поле “Email” вводите: test@exam_ple.com — система принимает адрес и успешно завершает регистрацию.

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

Что с наибольшей вероятностью стало причиной этой проблемы

🐸 Библиотека тестировщика

#междусобойчик

Читать полностью…

Библиотека тестировщика | QA, тестирование, quality assurance, manual testing, autotesting, ручное тестирование, автотесты

🔥 Знакомьтесь, преподаватель нашего нового курса по ML — Мария Жарова.

В карточках рассказали, чем Мария занимается и какие советы даёт тем, кто хочет расти в IT и Data Science ☝️

А если вы уже поняли, что тянуть нечего, начните свой путь в ML правильно: с реальной практикой, поддержкой ментора и видимым результатом.

👉 Записывайтесь на курс

Читать полностью…

Библиотека тестировщика | QA, тестирование, quality assurance, manual testing, autotesting, ручное тестирование, автотесты

Безлимитный чай с печеньками 🙂

🐸 Библиотека тестировщика

#развлекалово

Читать полностью…

Библиотека тестировщика | QA, тестирование, quality assurance, manual testing, autotesting, ручное тестирование, автотесты

📌 Команда для замера времени ответа API

Когда нужно понять, как быстро отвечает конкретный эндпоинт — без лишней аналитики и тулов — используйте curl с параметром -w (write-out).

curl -o /dev/null -s -w '%{time_total}\n'https://api.example.com/ping


-o /dev/null — не выводит тело ответа

-s — работает в «тихом» режиме (без прогресс-бара)

-w '%{time_total}\n' — выводит только общее время запроса (в секундах)

Для чего это нужно:

➡️ Проверить, не просел ли API по скорости (например, после релиза)

➡️ Зафиксировать бенчмарк до и после оптимизации

➡️ Сделать простую ручную проверку отклика в CI/CD без сложных тулов

💡 Лайфхаки:

— Выводить сразу несколько метрик:


curl -o /dev/null -s -w "DNS: %{time_namelookup}s\nConnect: %{time_connect}s\nTTFB: %{time_starttransfer}s\nTotal: %{time_total}s\n" https://api.example.com


— Проверить поведение при нагрузке:


seq 20 | xargs -n1 -P5 -I{} curl -o /dev/null -s -w '%{time_total}\n' https://api.example.com


(Запускает 5 параллельных запросов, по 20 раз — можно анализировать скорость на холодную/горячую)

🐸 Библиотека тестировщика

#буст

Читать полностью…

Библиотека тестировщика | QA, тестирование, quality assurance, manual testing, autotesting, ручное тестирование, автотесты

😀 Как начать карьеру тестировщика с нуля за 60 дней

Автор делится личным подходом к обучению тестированию без опыта и дорогих курсов.

В видео:

Зачем сразу переходить к практике, а не застревать в теории

С чего начать и какие шаги пройти за 2 месяца

Как не потеряться в большом количестве материалов

В чем разница между аутсорсом и продуктовой компанией на старте

Почему рынок по-прежнему открыт для новичков, несмотря на конкуренцию

Простой и наглядный гайд, чтобы наконец начать учиться, если давно откладывали 🤓

🔗 Смотреть видео

🐸 Библиотека тестировщика

#буст

Читать полностью…

Библиотека тестировщика | QA, тестирование, quality assurance, manual testing, autotesting, ручное тестирование, автотесты

🌸 Инструмент недели: оптимизируем автоматизацию тестирования с Mabl

Mabl — облачная платформа для автоматизации тестирования, которая использует ИИ для упрощения создания, выполнения и поддержки тестов.

Почему стоит попробовать:

➡️ Автоматическая генерация тестов на основе вашего описания, без необходимости писать код.

➡️ Инструмент адаптирует тесты под изменения в интерфейсе приложения, минимизируя необходимость вручную обновлять сценарии.

➡️Mabl подходит для тестирования AI-приложений, чат-ботов и других сложных решений с использованием простых описаний на естественном языке.

➡️ Подключение к популярным инструментам (GitHub, GitLab, Jira, Jenkins и другие) для автоматической проверки в вашей CI/CD-системе.

Как начать:

1. Зарегистрируйтесь на Mabl и создайте новый проект.

2. Установите агент для тестирования и подключите проект к вашей CI/CD системе.

3. Настройте тесты через интуитивно понятный интерфейс.

4. Запустите тесты и получайте отчеты с подробными результатами и предложениями по улучшению.

🔗 Подробнее на сайте

🐸 Библиотека тестировщика

#буст

Читать полностью…

Библиотека тестировщика | QA, тестирование, quality assurance, manual testing, autotesting, ручное тестирование, автотесты

⭐️ Как проверить пагинацию и фильтрацию в API

Пагинация и фильтрация — основа работы с большим объёмом данных в API. Неправильная реализация может привести к багам: дубли, пустые страницы.

1. Проверка пагинации по limit/offset (или page/size)

Пример:


GET /api/users?limit=10&offset=20


Проверяем:

🔴 Количество записей соответствует limit

🔴 Первые записи не повторяются с предыдущими страницами

🔴 Последняя страница возвращает < limit элементов, если данных меньше

🔴 Указание offset больше общего количества — пустой массив, не 500

2. Проверка фильтрации по полям

Пример:


GET /api/orders?status=completed&userId=42


Проверяем:

🔴 Все записи в ответе соответствуют status=completed

🔴 Если указать несуществующий userId, получаем пустой массив

🔴 Несколько фильтров работают в связке (AND / OR)

🔴 Поля фильтра чувствительны к регистру или нет — по документации

3. Проверка сочетания пагинации + фильтра


GET /api/orders?status=pending&limit=5&page=2


Проверяем:

🔴 На каждой странице нет дубликатов

🔴 Фильтр не сбрасывается при переключении страниц

🔴 Количество записей соответствует фильтру, а не общему числу

4. Негативные сценарии

*️⃣ limit=-1, offset=999999 — должны возвращать ошибку или пустой массив

*️⃣ status=DROP TABLE — нет SQL-инъекций

*️⃣ limit=10000 — ограничение на максимальное значение (должно быть)

*️⃣ userId=abc — проверка валидации типов

5. Что важно проверить:

Фильтрация отрабатывает точно — ни одной лишней или пропущенной записи

Пагинация не ломает логику — нет дубликатов, всё делится корректно

Ответ соответствует контракту API — есть поля meta.totalPages, items и т. д.

API устойчиво к мусору — не падает на limit=-1, status=aaa

💡 Такие проверки особенно важны при работе с таблицами, админками, отчетами и логами. Пагинация + фильтры = зона, где чаще всего ломаются списки и появляются баги на проде.

🐸 Библиотека тестировщика

#буст

Читать полностью…

Библиотека тестировщика | QA, тестирование, quality assurance, manual testing, autotesting, ручное тестирование, автотесты

☝️ Последний шанс купить курсы Proglib Academy с доступом навсегда!

Это не просто летняя распродажа, это финал эпохи. Мы дарим скидку 40% на все курсы, включая полностью обновлённый курс по Python (предложение НЕ ДЕЙСТВУЕТ только на курс по AI-агентам для DS-специалистов).

Но главное: с 1 августа доступ ко всем новым курсам станет ограниченным. Успейте инвестировать в свои знания на самых выгодных условиях!

👉 Выбрать курс

Читать полностью…

Библиотека тестировщика | QA, тестирование, quality assurance, manual testing, autotesting, ручное тестирование, автотесты

📌 Тренажеры и песочницы для прокачки QA-навыков

Если хочется прокачать навыки руками, а не только читать теорию — вот подборка отличных ресурсов для практики:

➡️ Bug Magnet (плагин) — расширение для браузера, которое добавляет готовые edge-кейсы (пустые строки, спецсимволы, длинные значения) прямо в поля ввода.

➡️ Test Automation University — интерактивные курсы по автотестам: Selenium, Cypress, API, визуальное тестирование, BDD и многое другое.

➡️ QA playground — интерактивная песочница с багами и задачами для ручного тестирования.

➡️ Mindmap-тренажёры по тест-дизайну — rоллекция майнд-карт, «чек-листов мышления», ситуационных задач для развития exploratory testing и навыков анализа.

➡️ DemoQA — тестовый сайт с интерактивными элементами: формы, таблицы, алерты, дропдауны, drag-and-drop и др.

🐸 Библиотека тестировщика

#свежак

Читать полностью…

Библиотека тестировщика | QA, тестирование, quality assurance, manual testing, autotesting, ручное тестирование, автотесты

🐸 Библиотека тестировщика

#развлекалово

Читать полностью…

Библиотека тестировщика | QA, тестирование, quality assurance, manual testing, autotesting, ручное тестирование, автотесты

😏 Фишка инструмента: кэширование авторизации между тестами

Cypress позволяет сохранять и восстанавливать сессию (cookies, localStorage, sessionStorage) при помощи команды cy.session(), чтобы логин не выполнялся перед каждым it. Это ускоряет тесты и делает их стабильнее.

Что еще полезного:

Ускоряет тесты — логин происходит единожды, остальные кейсы используют сохранённую сессию

Удобно для крупных e2e-сценариев с авторизацией

Поддерживает несколько сессий по разным ключам (пример: для разных ролей пользователя)

Как настроить:


beforeEach(() => {
cy.session(['qa@example.com', '123456'], () => {
cy.visit('/login')
cy.get('input[name="email"]').type('qa@example.com')
cy.get('input[name="password"]').type('123456')
cy.get('button[type="submit"]').click()
cy.url().should('contain', '/dashboard')
}, {
cacheAcrossSpecs: false
})
cy.visit('/dashboard')
})


➡️ cy.session() — кэширует сессию по идентификатору (массив или строка)

➡️ На следующий it Cypress восстановит сессию, минуя повторный логин

➡️ После cy.session() обязательно добавляйте cy.visit(), чтобы перейти на нужную страницу

💡 Дополнительно:

— Используйте cacheAcrossSpecs: true, чтобы сессия сохранялась между spec-файлами при запуске cypress run --browser electron (но могут быть нюансы с Chrome)

— Для валидации сессии можно добавить validate() опцию: при неуспехе — сессия пересоздаётся

— Cypress.session API позволяет отслеживать и очищать, если необходимо

🐸 Библиотека тестировщика

#буст

Читать полностью…

Библиотека тестировщика | QA, тестирование, quality assurance, manual testing, autotesting, ручное тестирование, автотесты

🕚 Почему баги в часовых поясах важнее, чем кажется

Наш подписчик поделился интересной историей:

«Во время тестирования регистрации на сайте я наткнулся на баг, из-за которого пользователи из разных часовых поясов не могли подтвердить свои аккаунты. Всё выглядело нормально, но время для ввода кода подтверждения не совпадало с реальным временем пользователя.

После разбирательства оказалось, что система не учитывала часовой пояс при расчёте времени действия кода. Пришли к такому решению: конвертировать время в UTC и отображать с учётом часового пояса.»


Были ли у вас такие проблемы с часовыми поясами? Как вы с ними справлялись?

🐸 Библиотека тестировщика

#междусобойчик

Читать полностью…
Подписаться на канал