Банк вопросов
Demo600 вопросов для подготовки к собеседованию
- Основы программирования для QAJuniorСкрининг с HR
Назначение и особенности циклов for и while в тестировании
Циклы for и while позволяют повторять блок кода несколько раз. for используется, когда известно число повторений, while — когда повтор зависит от условия, меняющегося во время выполнения.
- Основы программирования для QAJuniorСкрининг с HR
Принцип работы условной конструкции if/else в тестировании
Условие if/else — это базовый инструмент программирования, позволяющий выполнять разные участки кода в зависимости от истинности заданного выражения. Если условие истинно, запускается блок после if, иначе — код после else.
- Основы программирования для QAJuniorСкрининг с HR
Что такое переменная и какие бывают типы данных в программировании
Переменная — это именованное хранилище данных, значение которого можно менять во время работы программы. Тип данных задаёт формат и набор допустимых операций над значениями переменной.
- Основы программирования для QAMiddleТехническое
Отличия массивов и объектов в программировании для QA
Массив — это упорядоченный набор элементов с доступом по индексам, а объект — неупорядоченная коллекция пар «ключ-значение» с доступом по ключам. Массивы обычно применяются для хранения списков однотипных данных, объекты — для моделирования сущностей с разными свойствами.
- Асинхронные системы и очередиJuniorСкрининг с HR
Зачем использовать Apache Kafka в потоковой обработке данных
Apache Kafka применяется для организации масштабируемой и отказоустойчивой передачи и обработки потоков данных в реальном времени. Она обеспечивает сбор, хранение и интеграцию больших объемов информации из разных источников для последующего анализа.
- Асинхронные системы и очередиSeniorТехническое
Зачем применяется партицирование в системах с большими данными
Партицирование позволяет разбивать объёмные таблицы на логические сегменты, что ускоряет запросы и упрощает администрирование. Это повышает эффективность работы с большими наборами данных и снижает нагрузку на систему.
- Асинхронные системы и очередиSeniorТехническое
Как очереди обеспечивают асинхронность и масштабируемость систем
Очереди позволяют упорядочить и распределить задачи или сообщения между компонентами системы, обеспечивая асинхронную обработку и балансировку нагрузки. Они повышают надёжность и гибкость архитектуры, разделяя процессы для масштабирования.
- Асинхронные системы и очередиMiddleТехническое
Ключевые компоненты RabbitMQ и их функции в обмене сообщениями
RabbitMQ состоит из Producer, Exchange, Queue, Consumer и Binding. Producer отправляет сообщения в Exchange, который по правилам Binding направляет их в Queue. Consumer забирает сообщения из очереди для обработки.
- Асинхронные системы и очередиSeniorТехническое
Механизм доставки и обработки сообщений в Apache Kafka
В Apache Kafka сообщения публикуются продюсерами в топики, разбитые на партиции, а консумеры читают их по смещениям. Надежность достигается за счет репликации данных и подтверждений получения сообщений.
- Асинхронные системы и очередиLeadФинал
Методы проверки повторных попыток и дублирующей доставки в асинхронных системах
Тестирование повторных попыток и дублирующей доставки предполагает имитацию сбоев для проверки корректности логики ретраев без возникновения дубликатов и нарушения целостности данных. Важно убедиться, что система повторяет операции строго в рамках заданных правил и корректно обрабатывает повторные сообщения.
- Асинхронные системы и очередиSeniorТехническое
Методы проверки надежной доставки сообщений в асинхронных системах
Для уверенности в доставке сообщений применяйте подтверждения (acks) и механизмы повторной отправки (retries). Дополнительно используйте логи и мониторинг для отслеживания статусов сообщений и выявления потерь.
- Основы программирования для QAMiddleТехническое
Как в JSON обозначается структура массива и её синтаксис
В JSON массив представлен списком значений, заключённых в квадратные скобки []. Внутри элементы разделяются запятыми, сохраняя порядок следования.
- Основы программирования для QAJuniorСкрининг с HR
Что представляют собой классы в объектно-ориентированном программировании
Классы — это шаблоны для создания объектов в ООП, которые определяют их свойства и методы. Они помогают структурировать код, обеспечивают повторное использование и упрощают поддержку программ.
- Основы программирования для QAJuniorСкрининг с HR
Как работает наследование в объектно-ориентированном программировании
Наследование — это принцип ООП, позволяющий создавать новый класс на основе существующего, перенимая его свойства и методы. Это помогает избежать дублирования кода и облегчает масштабирование программ.
- Основы программирования для QAJuniorСкрининг с HR
Что представляет собой объект в ООП и как его использовать в тестировании
Объект в ООП — это конкретный экземпляр класса, объединяющий данные и методы для работы с ними. Объекты помогают создавать модели реальных сущностей и упрощают поддержку и повторное использование кода.
- Логи и мониторингSeniorТехническое
Как эффективно просматривать логи на удалённом сервере через SSH
Для доступа к логам на удалённом сервере подключитесь по SSH и используйте команды `tail` или `less` для чтения файлов. Например, команда `ssh user@host 'tail -f /var/log/syslog'` позволяет в реальном времени отслеживать системные логи.
- Логи и мониторингJuniorСкрининг с HR
Что такое лог-файл и зачем он нужен в QA
Лог-файл — это текстовый документ, фиксирующий события и действия системы или приложения. Он помогает анализировать работу, выявлять ошибки и контролировать производительность.
- Асинхронные системы и очередиJuniorСкрининг с HR
Отличия ролей продюсера и консьюмера в системах очередей
Продюсер отвечает за отправку сообщений в очередь или топик, а консьюмер — за получение и обработку этих сообщений из системы обмена данными.
- Асинхронные системы и очередиJuniorСкрининг с HR
Какую роль выполняет продюсер в архитектуре Apache Kafka?
Продюсер в Apache Kafka отвечает за формирование и отправку сообщений в заданные топики. Он направляет данные в брокеры Kafka для дальнейшего хранения и обработки.
- Асинхронные системы и очередиJuniorСкрининг с HR
Роль и функции консьюмера в архитектуре Kafka
Консьюмер в Kafka — это компонент, который читает сообщения из одного или нескольких топиков, обрабатывая входящие данные. Он может работать в составе группы консьюмеров для распределения нагрузки и повышения устойчивости системы.
- Асинхронные системы и очередиJuniorСкрининг с HR
Что представляет собой механизм очередей сообщений в асинхронных системах
Очереди сообщений обеспечивают асинхронный обмен данными между компонентами, позволяя им работать независимо и надежно передавать сообщения. Они помогают управлять нагрузкой и упрощают интеграцию распределённых сервисов.
- Асинхронные системы и очередиJuniorСкрининг с HR
Что представляет собой топик в Apache Kafka и как он работает
Топик в Kafka — это логическая категория для группировки сообщений, куда продюсеры отправляют данные, а консюмеры получают их, подписываясь на этот канал.
- Инструменты QAMiddleТехническое
Диагностика проблем клиента, сети и сервера через Charles Proxy
Charles позволяет локализовать проблему по уровню: если HTTP-запрос не отправляется — ошибка на клиенте; если запрос не доходит до сервера — сетевая проблема; если сервер отвечает ошибкой — проблема на сервере.
- Инструменты QAJuniorСкрининг с HR
Основные понятия Git: commit, branch и merge для начинающих QA
Commit — фиксация изменений в локальном репозитории. Branch — отдельная ветка для параллельной разработки. Merge — процесс слияния изменений из одной ветки в другую.
- Инструменты QAMiddleТехническое
Как настроить мокирование HTTP-запросов в Charles Proxy
Для создания мока в Charles нужно перехватить нужный HTTP-запрос, сохранить его в виде файла, изменить содержимое ответа и настроить Charles использовать этот файл вместо реального ответа сервера. Это позволяет тестировать приложение с контролируемыми данными.