SQL для тестировщика – Telegram
SQL для тестировщика
8.6K subscribers
428 photos
16 videos
1 file
458 links
Прокачиваем SQL — must have skill для хорошего тестировщика.

От создателей @godoftesting

По всем вопросам: @godinmedia
Download Telegram
🔐 Postgresus - self-hosted инструмент для резервного копирования и мониторинга PostgreSQL базы данных

Возможности:
- создание бекапов по расписанию для PostgreSQL 13-18;
- уведомления в Telegram, Slack, Discord, если бекап сломался или база недоступна;
- хранение бекапов локально, в S3 или Google Drive;
- health check базы данных раз в минуту;
- Apache 2.0 лицензия (полностью открытый);

Запуск через Docker:
docker run -d 
--name postgresus
-p 4005:4005
-v ./postgresus-data:/postgresus-data
--restart unless-stopped
rostislavdugin/postgresus:latest


📌 GitHub
👍9🔥21
🌐Уровни изоляции транзакций

Видеокурс Pragmatic Programmer.

Смотреть на YouTube ⏱️20 минут
Please open Telegram to view this post
VIEW IN TELEGRAM
👍8🔥1
Вы тестируете функционал, который удаляет все временные записи из таблицы temp_logs. В базе данных запущено множество других процессов. Какая команда наименее подвержена проблемам блокировки и не будет сильно нагружать журнал транзакций?
Anonymous Quiz
13%
A) DELETE FROM temp_logs;
20%
B) DROP TABLE temp_logs;
26%
C) TRUNCATE TABLE temp_logs;
41%
D) DELETE FROM temp_logs WHERE created_at < NOW();
😁8🤣3
This media is not supported in your browser
VIEW IN TELEGRAM
🟢Дайджест полезных материалов по QA 🐞 25 ноября - 3 декабря

🛠Инструменты
▫️Автоматическое создание тестов Playwright из Jira с OpenAI GPT-5.1
▫️Proxyman + HAR = mock-данные для iOS-тестов
▫️Агенты Playwright
▫️Как управлять установками в Appium через noReset и fullReset
▫️10 Chrome-расширений для QA часть 2
▫️Общая концепция локаторов и их специфика в Playwright
▫️5 промтов, которые сэкономили мне часы рутинной работы тестировщика

👔Собесы
▫️Базовая база для успешного собеседования на джуна в QA. Рассказываю, о чем спрашиваю на собесах
▫️6 простых вопросов, из-за которых сыпятся даже сильные кандидаты (и как отвечать правильно)

✍️Рассказы
▫️Нагрузочное испытание Wi-Fi, «народный» метод
▫️+30% к скорости написания автотестов и сотни чек-листов в день: как мы внедряем LLM в QA
▫️Почему агенты НЕ пишут основную часть нашего кода
▫️Интеграционное тестирование: от теории до боевого опыта
▫️Как мы оптимизировали тестирование с помощью API-сервисов
▫️Cursor и ИИ-ассистенты ускоряют разработку — но без нормальных автотестов топят всю команду
▫️SVG, Canvas, WebGL, WebGPU — кто здесь вообще главный? Большой тест 2D-графики в браузере
▫️Где ломается прокси-балансировщик: наш опыт измерений
▫️Почему ваш сайт ломается, когда его трогают пальцем
▫️Как я тестирую крупные системы, которые невозможно протестить на статичных данных
▫️Тестирование без тонны кейсов: свобода, автотесты и экспертиза
▫️Как ускорить автотесты на Python в Pytest в 8,5 раз
▫️Почему QA должен быть душнилой: тестируем PostgreSQL и не даём разработчикам расслабиться
▫️Роботизированное ручное тестирование в Т-Банке

💡Философия
▫️Качество = Здоровье
▫️Как мы будем тестировать человекоподобных роботов (когда они станут реальностью)

👀Видео
🌐The mobile testing paradox ⏱️1 час
🌐Как погрузиться в автоматизацию за 60 дней ⏱️45 минут
🌐Проверка и отладка Accessibility ⏱️45 минут

Подробнее
Please open Telegram to view this post
VIEW IN TELEGRAM
👍6🔥1
Удобный софт для работы с файлами SQLite

#почитать

Исходный код SQLite находится в общественном достоянии вообще без лицензии и доступен всем для использования в любых целях. Забавно, что проект поддерживают всего три человека, которые не допускают внешних контрибьюторов. В данный момент имена авторов держатся в секрете и удалены с официального сайта во избежание сталкинга.

Среди всех программных компонентов и библиотек SQLite входит в пятёрку самых популярных в мире, вместе с оригинальной реализацией zlib, оригинальным libpng и официальной библиотекой Libjpeg. На этих компонентах держится современная IT-индустрия: библиотеки для графики PNG и JPEG, сжатие данных zlib и наша СУБД SQLite.

Читать статью
Please open Telegram to view this post
VIEW IN TELEGRAM
👍6
🤳Прокачайте свою карьеру в мобильном QA

В Академии Selectel вышел бесплатный курс по тестированию мобильных приложений. Он объединил актуальный опыт практикующих экспертов из бигтеха и не только. Материалы будут полезны начинающим тестировщикам и опытным специалистам для систематизации знаний по мобильным платформам.

Курс бесплатный и доступен для прохождения в удобное для вас время. Приятный бонус: промокод для бесплатной работы с мобильной фермой Selectel в процессе обучения.

👉Получите доступ к курсу: https://slc.tl/wk1s5

Реклама. АО "Селектел". erid:2W5zFHuEDmJ
👍6🔥1
Реляционная база данных: сущности, атрибуты, ключи и связи на реальном проекте

#почитать

▪️Сущности и связи. Архитектура данных
▪️Почему важно говорить про структуру
▪️Базы данных: что это и как с ними работать
▪️Зачем разбираться в типах баз данных?
▪️Концептуальная модель: что есть в нашей системе
▪️Нормализация: как навести порядок в данных
▪️Ключи и связи: как элементы объединяются между собой

Читать статью
Please open Telegram to view this post
VIEW IN TELEGRAM
👍7🔥1
У вас есть две таблицы: users (ID, name) и orders (user_id, amount). Какой тип JOIN вернёт всех пользователей, включая тех, у которых нет заказов?
Anonymous Quiz
21%
A) INNER JOIN
41%
B) FULL OUTER JOIN
31%
C) LEFT JOIN
8%
D) RIGHT JOIN
👍61🔥1
🐘 Открыт прием заявок на выступления для специалистов по PostgreSQL

Мероприятие: PG BootCamp Russia — официальное российское комьюнити-мероприятие PostgreSQL
Когда: весна 2026 г. (дата уточняется)
Где: г. Москва
Больше о мероприятиях PG BootCamp

В отличие от коммерческих конференций, предметом докладов выступает «ванильная» версия этой СУБД. Темы выступлений, связанные с коммерческими продуктами, не принимаются. Доклады (их обычно до 16 в два трека) делятся по темам разработки и эксплуатации. Формат предполагает камерную атмосферу, максимальную практическую пользу и содержательное профессиональное общение.

Открыт прием заявок на выступления:
🔹Исследование внутренней архитектуры PostgreSQL
🔹 Оптимизация производительности в высоконагруженных системах
🔹Анализ сложных задач и методов их решения
🔹 Инструменты и методологии для DBA
🔹 R&D-исследования, связанные с Postgres


Если у вас есть материалы, которым вы хотите поделиться с сообществом, — пожалуйста, присылайте тезисы. Это возможность не только представить свою работу, но и получить содержательную обратную связь от ведущих специалистов.

🎙Подать заявку на выступление
Please open Telegram to view this post
VIEW IN TELEGRAM
👍6🔥1
Вы выполнили серию операций в рамках одной транзакции (изменили несколько строк). Как отменить все эти изменения?
Anonymous Quiz
8%
A) COMMIT;
2%
B) SAVEPOINT;
82%
C) ROLLBACK;
7%
D) UNDO;
👍9
Как мы научили PostgreSQL автоматически создавать партиции

#почитать

Задача: Один наш крупный телеком-клиент уже несколько лет активно занимается проектами импортозамещения. Его основной фокус — перевод биллинговых систем (ключевого цифрового инструмента для управления бизнесом и взаимодействием с клиентами) с Oracle на PostgreSQL, а в качестве импортонезависимой системы управления базами данных (СУБД) выбрана платформа Nexign Nord на базе PostgreSQL от Nexign.

Вызов: Партиционирование и субпартиционирование — это неотъемлемая часть работы с большими объемами информации в продуктах Nexign. Такой подход позволяет разбивать огромные таблицы на более управляемые части, упрощая обслуживание баз данных (БД). В Oracle для этого используется встроенный автоматический механизм создания новых партиций, но в процессе подготовки к миграции на PostgreSQL перед нами встал вопрос сохранения того же уровня удобства и автоматизации.

Решение: Вместе с клиентом мы выстроили поэтапный процесс миграции продуктов: от простых решений к более сложным. Начинали с баз данных объемом в несколько десятков гигабайт, а к концу 2024 года успешно перенесли одну из крупнейших баз в нашем биллинговом решении — 5 ТБ данных с нагрузкой около 20 000 транзакций в секунду (TPS). Всё это удалось благодаря разработке собственного расширения для автоматизации партиционирования в PostgreSQL с поддержкой партиционирования по хэшу.

Читать статью
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥8
This media is not supported in your browser
VIEW IN TELEGRAM
🟢Дайджест полезных материалов по тестированию 🐞 4-14 декабря

О том, как не попасть в ловушки теории вероятностей и почему онбординг в финтехе похож на курс молодого бойца, запуск GTA 5 на Пентиуме, также исповедь человека, получившего ДЕВЯТЬ сертификатов ISTQB.

🛠TestEngineer
▫️Минимально жизнеспособная тестовая документация
▫️Это как купить Феррари и ездить на первой передаче
▫️Микросервисы: где заканчивается юнит-тестирование и начинается интеграционное

Также
▫️Стратегический гайд для CTO по интеграционному тестированию для крупных проектов
▫️Как выстроить автоматизацию тестирования API, которая выдержит масштабирование продукта
▫️Тестирование юзабилити для начинающих: 10 советов для прокачки навыков в UX
▫️Четыре фрейма тестирования, часть 7: критическая дистанция
▫️Есть ли что-то в вашем «Я», кроме искусственного интеллекта?

🎙Хабр
▫️9 ISTQB сертификатов спустя: что бы я реально посоветовал тем, кто собирается сдавать
▫️Как проходит онбординг тестировщика в финтехе
▫️Как мы превратили скучное тестирование в захватывающее развлечение
▫️Лего-стенд. История сборки универсальной тестовой лаборатории из 30+ устройств
▫️Почему токсичные эксперты больше никому не нужны
▫️Как выглядит Wi-Fi взлом изнутри (схемы, примеры, анализ)
▫️5 ловушек теории вероятностей в IT
▫️Превращаем сайт в мобильное приложение за пару шагов. Часть 1 + Часть 2
▫️Ответ на «безумный эксперимент» по запуску GTA 5 на Pentium 4
▫️Воспроизводим тот самый баг на $475 000 000
▫️Как преобразовать огромный монорепозиторий с автотестами в микросервисы

👀Посмотреть
📺Zen and the art of quality maintenance ⏱️1 час
📺Как получить высокую оценку на перф-ревью и не сгореть ⏱️25 минут
📺How to Report AI-Assisted Work ⏱️30 минут

🟢Подробно
Please open Telegram to view this post
VIEW IN TELEGRAM
💯7👍1🔥1
У вас есть таблица scores (player, score). Как вывести список игроков, где у игроков с одинаковым счетом одинаковый ранг, а следующий ранг не пропускает номер?
Anonymous Quiz
34%
A) SELECT player, DENSE_RANK() OVER (ORDER BY score DESC) AS rank FROM scores;
28%
B) SELECT player, RANK() OVER (ORDER BY score DESC) AS rank FROM scores;
25%
C) SELECT player, ROW_NUMBER() OVER (ORDER BY score DESC) AS rank FROM scores;
13%
D) SELECT player, NTILE(4) OVER (ORDER BY score DESC) AS rank FROM scores;
👍9
📌 Большая подборка ресурсов для практики SQL для QA, BA, DA и не только

Если вы работаете в IT или только начинаете путь в QA/BA/DA — знания SQL точно пригодятся.
Вот подборка ресурсов, где можно практиковаться, готовиться к собеседованиям и улучшать навыки работы с данными.

▫️ Практика SQL-запросов онлайн

— SQLBolt
🔗 https://sqlbolt.com

— Mode SQL Tutorial
🔗 https://mode.com/sql-tutorial

— LeetCode SQL Problems
🔗 https://leetcode.com/problemset/database

— HackerRank SQL Practice
🔗 https://www.hackerrank.com/domains/sql

— Stratascratch — SQL Practice
🔗 https://www.stratascratch.com

— DB-Fiddle
🔗 https://www.db-fiddle.com

▫️ Подготовка к техническому собеседованию по SQL

— InterviewBit — SQL Interview Questions
🔗 https://www.interviewbit.com/sql-interview-questions

— MindMajix — Top SQL Interview Questions
🔗 https://mindmajix.com/sql-interview-questions

— DataCamp — SQL Interview Questions
🔗 https://www.datacamp.com/blog/sql-interview-questions

— GeeksforGeeks — SQL Questions for Data Analyst
🔗 https://www.geeksforgeeks.org/sql-for-data-analyst-interview-questions

▫️ Симуляторы собеседований

— Pramp — SQL Interview Practice
🔗 https://www.pramp.com

— Exercism — SQL Track
🔗 https://exercism.org/tracks/sql

▫️ YouTube-каналы с практикой и разбором SQL

— Data School — SQL for Data Analysis
🔗 https://www.youtube.com/@dataschool

— Alex The Analyst — SQL Projects and Practice
🔗 https://www.youtube.com/@AlexTheAnalyst

— Programming with Mosh — SQL Tutorial
🔗 https://www.youtube.com/watch?v=HXV3zeQKqGY

▫️ Основы SQL — квизы и тесты

— W3Schools SQL Quiz
🔗 https://www.w3schools.com/sql/sql_quiz.asp

— TutorialsPoint SQL Quiz
🔗 https://www.tutorialspoint.com/sql/sql_online_quiz.htm

— GeeksforGeeks — SQL Basics Quizzes
🔗 https://www.geeksforgeeks.org/sql-quizzes

Сохраняйте подборку и делитесь с коллегами — пригодится всем, кто работает с данными.
👍71🔥1
У вас есть таблица sales с колонками country, product, amount. Как получить общий объем продаж для каждого продукта и для каждой страны, а также общую сумму продаж для всех стран и продуктов?
Anonymous Quiz
27%
A) SELECT country, product, SUM(amount) FROM sales GROUP BY CUBE(country, product);
25%
B) SELECT country, product, SUM(amount) FROM sales GROUP BY ROLLUP(country, product);
29%
C) SELECT country, product, SUM(amount) FROM sales GROUP BY GROUPING SETS(country, product, ());
19%
D) SELECT country, product, SUM(amount) FROM sales GROUP BY country, product WITH CUBE;
👍81🔥1
Работа с временными таблицами в PostgreSQL

#почитать

При создании временных таблиц в PostgreSQL изменяются до 13 таблиц системного каталога, при этом особенно сильно разрастаются pg_attribute, pg_class, pg_depend и pg_type.

Читать статью
Please open Telegram to view this post
VIEW IN TELEGRAM
👍71🔥1
Соединяем AI и реляционную базу данных

#почитать

На статью данный текст точно не тянет, скорее это маленькая заметка. Как известно свои дети и свои идеи они всегда самые лучшие. Я давно работаю с реляционными базами и очень люблю язык SQL за его формализм, скорее всего из-за этой моей профдеформации и родилась эта мысль. На работе ко мне иногда обращались сделать выгрузку в CSV файл из базы для обучения моделей или анализа данных, и я подумал, а зачем выгружать данные, а потом иногда загружать обратно результат в базу. Почему не сделать так что бы результат запроса сразу отправлялся на обработку в AI и затем выдавался ответ на запрос. Нам всего лишь нужна SQL функция которая берет результат запроса, заворочает его в вызов к модели, а потом выдает результат. Понятно, что серебряной пули нет и данный подход не везде будет работать, например, такой подход не подразумевает асинхронность, а значит если нужна высокая производительность, то данный подход не очень подходит, с другой стороны сейчас запросы к AI не дёшевы и если вы пошлете 100 запросов в секунду, не дождавшись ответа на предыдущие то скорее всего получите ошибку. Я думаю в будущем это будет стандартная функции в базах данных.


Читать статью
Please open Telegram to view this post
VIEW IN TELEGRAM
👍71🔥1
Какой оператор в MySQL позволяет получить только первые N строк результата?
Anonymous Quiz
60%
LIMIT
24%
TOP
11%
FETCH FIRST
6%
ROWNUM
👍71🔥1