Банк вопросов
Demo186 из 600 после фильтров
- Виды и уровни тестированияSeniorТехническое
Категории классификации видов тестирования в QA
Тестирование делят на группы по уровню проведения, автоматизации, целям и методам. Основные категории включают уровни (unit, интеграционное и др.), типы по автоматизации и функциональные направления.
- HTTP, REST и APISeniorТехническое
Основные HTTP-методы в REST API и их назначение
REST API опирается на стандартные HTTP-методы для управления ресурсами: GET извлекает данные, POST создаёт новые, PUT обновляет целиком, PATCH обновляет частично, DELETE удаляет, OPTIONS сообщает поддерживаемые методы, а HEAD возвращает только заголовки ответа.
- HTTP, REST и APISeniorТехническое
Основные методы авторизации в Postman для API-тестирования
Postman предоставляет широкий набор методов авторизации, включая Basic Auth, Bearer Token, OAuth 1.0/2.0, API Key и другие. Выбор зависит от требований API и уровня безопасности, необходимого для доступа к ресурсам.
- HTTP, REST и APISeniorТехническое
Ключевые принципы и требования архитектуры REST для API
REST — это архитектурный стиль для создания веб-API с набором строгих требований: использование стандартных HTTP-методов, отсутствие состояния между запросами, кэшируемость, четкий интерфейс и разделение клиента и сервера.
- HTTP, REST и APISeniorТехническое
Ключевые этапы системного тестирования API для senior QA
Тестирование API включает подготовку окружения, анализ требований, создание и выполнение тест-кейсов, анализ результатов, составление отчётов и проведение регрессионного тестирования для проверки стабильности.
- HTTP, REST и APISeniorТехническое
Протоколы, применяемые в архитектуре REST API
REST преимущественно базируется на протоколе HTTP/HTTPS для обмена данными. Тем не менее, архитектура REST не ограничена только этими протоколами и может использовать другие, такие как FTP или SMTP, в зависимости от специфики системы.
- HTTP, REST и APISeniorТехническое
Какую функцию выполняет API в архитектуре клиент-сервер
API обеспечивает стандартизированный интерфейс для обмена данными между клиентом и сервером, позволяя клиенту запрашивать ресурсы и инициировать операции на сервере. Это гарантирует согласованное и безопасное взаимодействие компонентов системы.
- HTTP, REST и APISeniorТехническое
Когда и зачем использовать REST для создания API
REST применяют для разработки веб-сервисов, которые работают через HTTP, обеспечивая удобное масштабирование и независимость от платформ. Он идеально подходит для систем с разделением клиентской и серверной логики и поддерживает разнообразные клиенты — от веба до IoT-устройств.
- HTTP, REST и APISeniorТехническое
Когда стоит использовать gRPC в микросервисных системах
gRPC рационально применять для обеспечения высокой скорости обмена данными и минимальной задержки между сервисами, особенно в распределённых архитектурах. Он поддерживает множество языков и эффективен при двунаправленной потоковой передаче.
- HTTP, REST и APISeniorТехническое
Особенности HTTP GET: ограничения, передача данных и побочные эффекты
HTTP-метод GET предназначен для получения ресурсов с сервера без изменения его состояния. Он передаёт данные через URL с ограничением по длине и не должен вызывать побочных эффектов на сервере.
- HTTP, REST и APISeniorТехническое
Возможно ли выполнение POST-запроса без передачи тела запроса?
Да, HTTP-протокол допускает отправку POST-запросов без тела. В таких случаях данные могут передаваться через заголовки или параметры URL.
- HTTP, REST и APISeniorТехническое
Как отследить взаимодействие модулей системы через REST API?
REST API не обеспечивает прямого мониторинга обмена данными между внутренними модулями системы. Для такой цели необходимо специально разрабатывать эндпоинты, отражающие взаимодействия согласно архитектуре приложения.
- HTTP, REST и APISeniorТехническое
С какими сетевыми протоколами взаимодействует SOAP-протокол?
SOAP использует различные транспортные протоколы передачи данных, включая HTTP, HTTPS, SMTP и TCP, при этом основным и самым распространённым является HTTP/HTTPS, обеспечивающий надёжную доставку сообщений.
- HTTP, REST и APISeniorТехническое
Как сервер обрабатывает повторные POST-запросы и последствия этого
Повторная отправка POST-запроса приводит к многократной обработке на сервере, что может вызвать дублирование данных или повторное выполнение действия, так как POST не является идемпотентным методом.
- Асинхронные системы и очередиSeniorТехническое
Методы проверки идемпотентности consumer при дублированных сообщениях
Тестируйте consumer, отправляя дублированные сообщения с одинаковым ключом или токеном, и проверяйте отсутствие повторных изменений в состоянии системы. Фиксируйте побочные эффекты и метрики для выявления избыточной обработки.
- SQL и базы данныхSeniorТехническое
Ключевые сценарии тестирования изоляции транзакций и фантомных чтений
Проводят тесты параллельных транзакций с разными уровнями изоляции, чтобы выявить non-repeatable read, phantom read и возможные дедлоки. Особое внимание уделяют поведению при одновременном доступе к данным и корректности откатов.
- Архитектура системSeniorТехническое
Методы валидации саг и компенсирующих транзакций в распределённых заказах
Для проверки саги инициируют ошибку на конкретном шаге и анализируют откат или компенсацию, контролируя отсутствие заблокированных ресурсов и целостность агрегатов. Важно убедиться, что все операции корректно отменяются или компенсируются без нарушения согласованности данных.
- HTTP, REST и APISeniorТехническое
Проверка обратной совместимости REST API при добавлении обязательного поля в ответ
Необходимо убедиться, что старые клиенты корректно обрабатывают обновлённый ответ, используя тесты контрактов и стратегии версионирования. Важно применять feature negotiation и проводить consumer-driven тестирование.
- Безопасность и авторизацияSeniorТехническое
Ключевые проверки refresh-токенов и управления сессиями в SPA
Необходимо проверять срок действия refresh-токена, связывать его с конкретным устройством, обеспечивать возможность отзыва при подозрении на компрометацию, предотвращать повторное использование токена и корректно обрабатывать выход из системы на всех вкладках.
- Сети и протоколыSeniorТехническое
Методы выявления проблем TCP slow start и буферных задержек в условиях высокой латентности
Для диагностики TCP slow start и проблем с буферами при большой задержке нужно анализировать сетевые трассировки, отслеживать динамику окна перегрузки (cwnd), проверять размеры окон TCP и наличие потерь пакетов, а также учитывать влияние промежуточных прокси. Рекомендуется воспроизводить проблему в условиях эмуляции сети.
- Логи и мониторингSeniorТехническое
Интеграция распределённой трассировки с тестовыми прогончиками для диагностики флейков
Передавайте trace id из тестового сценария в HTTP-заголовках, чтобы связать спаны разных сервисов и выявить аномалии по времени выполнения и ретраям. Это помогает локализовать причины нестабильности тестов.
- Web-тестирование и DevToolsSeniorТехническое
Методы тестирования гонок между вкладками с SharedWorker и localStorage
Имитация одновременных операций записи из разных вкладок, проверка корректности блокировок, отслеживание событий `storage` и валидация синхронизации интерфейса пользователя.
- Мобильное тестированиеSeniorТехническое
Методы выявления и проверки ANR и джиттера UI-потока в Android
Для диагностики ANR и джиттера используют профилировщики, например, `Systrace`, включают строгий режим (`StrictMode`) и создают нагрузочные сценарии на устройствах с ограниченными ресурсами. Особое внимание уделяют проверке анимаций и отзывчивости главного потока.
- Основы программирования для QASeniorТехническое
Как минимизировать нестабильность UI-тестов из-за анимаций и таймеров
Для снижения флейков в UI-автотестах отключайте или ускоряйте анимации в тестовой среде, применяйте ожидания состояний элементов вместо фиксированных задержек `sleep` и обеспечивайте стабильность тестовых данных.
- Инструменты QASeniorТехническое
Организация контрактного тестирования OpenAPI в CI при мульти-репозиториях
Спецификацию OpenAPI следует хранить как отдельный артефакт и интегрировать её в процессы CI. Используйте инструменты типа schemathesis, Dredd или Prism для запуска контрактных тестов, которые проверяют соответствие ответов сервера схеме при каждом pull request.