Описание
Что желательно знать QA. Базы данных.
Возвращаюсь к рубрике вызвавшей много обсуждений - знания и навыки для QA. Сегодня рассмотрим сегодня рассмотрим SQL и базы данных. Мнения разделились - кто-то считает, что QA в базы не пускают, а по моему опыту, работа с БД часто бывает частью тестирования.
Я решила не делить навыки по грейдам, так как требования зависят от проекта.
Вместо этого разделила на две группы:
▫️Основные — часто применяются в ручном и автоматизированном тестировании.
▫️Дополнительные - полезны в специфических задачах.
Этот список - личное мнение автора, рекомендации на основе моего опыта. Надеюсь, будет полезно!
Основные навыки:
1. CRUD операции (Select, Update, Insert, Delete) - основа работы с данными.
2. Основные операции выборки (WHERE, LIMIT, OFFSET, TOP, ORDER BY, DESC) - позволяют фильтровать выборки, выбирать нужное количество записей и реализовывать постраничную выборку.
3. Логические операции (AND, OR, NOT, IN) - для логических условий в выборках.
4. Агрегатные функции (COUNT, SUM, MIN, MAX, AVG) - помогают анализировать данные в таблицах.
5. Подзапросы - для проверки сложных зависимостей между данными.
6. Различные виды связываний (INNER, LEFT, RIGHT, FULL JOIN) - для объединения данных из разных таблиц.
7. Ключи и ограничения (первичный, внешний ключи, CONSTRAINTS) - обеспечивает целостность и связанность данных.
8. Создание и удаление сущностей (CREATE DATABASE, CREATE TABLE, DROP DATABASE, DROP TABLE) - полезно при автоматизации для создания и очистки тестовой базы.
9. Очистка таблиц (TRUNCATE) - эффективная очистка данных без удаления структуры таблицы.
10. Группировка и фильтрация агрегированных данных (GROUP BY, HAVING) - для группировки и фильтрации результатов.
11. Удаление дубликатов (DISTINCT) - чтобы получить уникальные значения при выборке.
12. Представления (VIEW) - виртуальные таблицы, для упрощения работы со сложными выборками.
13. Хранимки - понимание назначения и проверка возвращаемых данных.
Дополнительные навыки:
1. Индексы - Базовое понимание, создание, анализ использования.
2. Планы выполнения запросов, трассирован запросов, оценка производительности, логи медленных запросов.
3. Создание пользователей и управление правами (CREATE USER, GRANT PRIVILEGES) - в редких случаях QA может потребоваться.
4. Триггеры и каскадное удаление.
Нормализация и денормализация - для общего понимания структуры данных.
5. UNION и аналитические функции (ROLLUP, CUBE) - для создания сложных отчетов.
6. Изоляция транзакций - полезно для понимания поведения БД при одновременных изменениях.
7. Коннекты в SQL сервере - просмотр списка коннектов, изменение максимального количества коннектов.
8. Хранимки - создание и написание.
Конечно, всё зависит от конкретного проекта и задач. Даже если некоторые из перечисленных навыков могут не потребоваться в ежедневной работе, их знание помогает глубже понять процессы работы с данными и быстрее находить ошибки в сложных системах.
Ксения Раховская
Контакты работодателя (email/phone/telegram) скрыты из публичного превью —
отправьте резюме, чтобы мы связали вас напрямую.