TGViewer
Channel Public Channel
Тестировщик | Вопросы собесов

Тестировщик | Вопросы собесов

@easy_qa_ru

Сайт: https://easyoffer.ru/
Все каналы: t.me/+xGeAw6ckJ4liYzQy

Контакт для рекламы: @easyoffer_adv
Subscribers
12.2K
Photos
35
Videos
2
Links
1.6K
Recent Posts 20 shown
Post #2977 170
🤔 Что будет в билде на альфа-тестировании?

Альфа-тестирование – это первая фаза тестирования перед бета-релизом, которая проводится внутри компании. Билд на этом этапе может быть нестабильным, но уже включает основные функции для тестирования.

🚩Что включает билд на альфа-тестировании?

Основной функционал – ключевые функции уже работают, но могут быть недочёты.
Отладочная информация – логирование, дебаг-панели, метрики для диагностики багов.
Известные баги – разработчики могут оставить список проблем, которые ещё не исправлены.
Тестовые данные – могут быть заглушки вместо реальных данных (фейковые платежи, тестовые аккаунты).
Функции в разработке – некоторые части могут быть недоделаны или отключены.
Инструменты отладки – иногда включаются специальные команды для тестирования.

🚩Что тестируется на альфа-версии?

Критические баги – краши, зависания, ошибки работы системы.
Основной функционал – соответствие требованиям, корректность логики.
Производительность – скорость работы, потребление памяти, нагрузка.
Интеграции – взаимодействие с API, базами данных, сторонними сервисами.
UI/UX – базовая проверка интерфейса, удобство использования.

🚩Кто тестирует альфа-билд?

QA-инженеры – проводят основное тестирование.
Разработчики – могут тестировать функции перед передачей QA.
Менеджеры, аналитики – проверяют соответствие требованиям.

Ставь 👍 и забирай 📚 Базу знаний
Post #2975 420
🤔 Что такое эквивалентное разделение?

Эквивалентное разделение (Equivalence Partitioning) — это метод тестирования, при котором тестовые данные разделяются на эквивалентные группы, которые ожидаемо ведут себя одинаково. Это позволяет тестировщику выбирать один или несколько представителей из каждой группы для тестирования, вместо того чтобы тестировать каждое значение отдельно, тем самым сокращая общее количество тестов, необходимых для покрытия требуемого функционала.

Ставь 👍 если знал ответ, 🔥 если нет
Забирай 📚 Базу знаний
  • 👍 3
Post #2974 459
🤔 Как сервер проверит что ключ доступа соответствует?

Проверка ключа доступа сервером осуществляется с использованием различных методов аутентификации и валидации. Вот процесс проверки с объяснением:

🟠Получение ключа от клиента
Когда клиент отправляет запрос, он включает ключ доступа (например, в заголовке, параметрах запроса или теле).
GET /api/resource HTTP/1.1
Authorization: Bearer your_access_token


🟠Сопоставление ключа с базой данных
Сервер проверяет ключ, сравнивая его с сохраненными данными:
Где хранятся ключи? Обычно ключи хранятся в защищенной базе данных в виде:
- Оригинала (например, API-ключей).
- Хэша (например, для JWT или паролей, чтобы не хранить оригинальные данные).
Что проверяется?
- Существование ключа.
- Связанная с ним информация (например, пользователь, срок действия, права доступа).

🟠Проверка срока действия (Expiration Time)
Для токенов (например, JWT) или временных ключей сервер проверяет, не истек ли срок действия: Для API-ключей это может быть статическое поле "срок действия" в базе данных.
Для JWT срок действия зашит в самом токене в поле exp.

🟠Валидация подписи (для JWT или шифрованных ключей)
Если используется токен, сервер проверяет его подлинность с помощью подписи:
JWT: Сервер декодирует токен и проверяет подпись, используя секретный ключ (HS256) или открытый ключ (RS256). Если подпись невалидна, запрос отклоняется.
Зачем подпись?
Чтобы удостовериться, что токен был выдан сервером и не изменен.
Пример кода валидации JWT на Python с использованием библиотеки PyJWT
import jwt

SECRET_KEY = "your_secret_key"

def validate_jwt(token):
try:
payload = jwt.decode(token, SECRET_KEY, algorithms=["HS256"])
return payload # Возвращает данные токена, если он валиден
except jwt.ExpiredSignatureError:
return "Token expired"
except jwt.InvalidTokenError:
return "Invalid token"


🟠Проверка прав доступа
Сервер анализирует связанный с ключом контекст (например, роли или разрешения):
Пример: Пользователь с ключом KEY123 имеет доступ только к определенным данным или функциям.
Реализация: Хранение прав в базе данных или в самом токене (внутри payload).

🟠Ответ на основе результата проверки
Если ключ валиден, сервер разрешает доступ к ресурсу и возвращает данные. Если ключ недействителен (не существует, истек, не имеет прав), сервер возвращает ошибку, например:
401 Unauthorized (для отсутствия или невалидного ключа).
403 Forbidden (если прав недостаточно).

Ставь 👍 и забирай 📚 Базу знаний
  • 🔥 2
Post #2972 553
🤔 Что включает в себя тестирование инсталляции?

Тестирование установки включает в себя проверку:
- Успешной установки (процесс проходит без ошибок).

- Работоспособности после установки (приложение запускается корректно).
- Удаления программы (не оставляет "мусора" в системе).
- Обновления на новую версию (не теряются данные).
- Совместимости с разными ОС и устройствами.
- Доступности необходимых зависимостей (например, Java, .NET).


Ставь 👍 если знал ответ, 🔥 если нет
Забирай 📚 Базу знаний
  • 👍 3
  • 🔥 1
Post #2971 609
🤔 Что такое интеграционное тестирование?

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

🚩Почему оно важно?

В реальных приложениях модули редко работают изолированно. Например:
- Фронтенд взаимодействует с бекендом.
- Один сервис вызывает другой через API.
- Компоненты приложения используют общую базу данных.
Ошибки могут возникать при интеграции, даже если каждый модуль работает корректно. Интеграционное тестирование помогает обнаружить такие проблемы.

🚩Основные задачи интеграционного тестирования

🟠Проверка взаимодействия модулей
Убедиться, что данные корректно передаются между компонентами.

🟠Обнаружение ошибок, возникающих на стыке
Например: Различия в формате данных.
Некорректные вызовы API.

🟠Проверка работы с внешними системами
Например, взаимодействие с базами данных, API сторонних сервисов или файловыми хранилищами.

Удостовериться в согласованности работы модулей
Например, фронтенд отправляет запрос, а бекенд возвращает данные в ожидаемом формате.

🚩Методы интеграционного тестирования

🟠Big Bang Testing (Тестирование "Большим взрывом")
Все модули объединяются и тестируются одновременно. Подходит для небольших систем. Недостаток: если возникает ошибка, сложно определить, в каком модуле проблема.

🟠Incremental Testing (Инкрементное тестирование)
Модули интегрируются и тестируются постепенно. Восходящее тестирование (Bottom-up). Сначала тестируются низкоуровневые модули (например, работа с базой данных), а затем высокоуровневые. Используются "заглушки" для имитации поведения высокоуровневых модулей.

🟠Тестирование интерфейсов (Interface Testing)
Проверка взаимодействия через интерфейсы: API, базы данных, файловые системы и т.д.

Ставь 👍 и забирай 📚 Базу знаний
  • 👍 2
Post #2970 629
🤔 Что такое Test-Driven Development (TDD)?

TDD — это подход к разработке, при котором сначала пишутся тесты, описывающие поведение системы, затем код, который проходит эти тесты, и далее рефакторинг. Цикл: Red → Green → Refactor.


Ставь 👍 если знал ответ, 🔥 если нет
Забирай 📚 Базу знаний
  • 👍 2
Post #2969 658
🤔 Когда нужен чек лист?

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

🚩Основные случаи применения

🟠Регрессионное тестирование
Чтобы убедиться, что все важные функции приложения работают после внесения изменений в код.

🟠Санитарное тестирование (Sanity Testing)
Быстрая проверка критических функций после мелких изменений или исправлений.

🟠Смоук-тестирование (Smoke Testing)
Первичная проверка основных функций системы перед началом более детального тестирования.

🟠Тестирование по сценариям (Scenario-Based Testing)
Проверка специфических сценариев использования приложения, чтобы убедиться, что они выполняются правильно.

🟠Ручное тестирование (Manual Testing)
Помогает тестировщикам не пропустить важные шаги и систематизировать процесс.

🟠Повторяющиеся тесты
Когда необходимо многократно выполнять одни и те же тесты в течение длительного времени, чек-лист помогает поддерживать качество и последовательность.

🟠Тестирование по требованию
Для тестирования специфических требований и бизнес-правил, чтобы убедиться, что они правильно реализованы.

🟠Новые члены команды
Чек-лист помогает новым членам команды быстрее освоиться и следовать установленным процессам.

🚩Пример

1⃣Авторизация
Проверка ввода корректного логина и пароля. Проверка реакции на некорректный логин и пароль. Проверка функции восстановления пароля.

2⃣Корзина
Добавление товара в корзину. Удаление товара из корзины. Обновление количества товара в корзине.

3⃣Оформление заказа
Проверка процесса ввода данных для доставки. Проверка различных методов оплаты. Проверка отправки подтверждения заказа.

Ставь 👍 и забирай 📚 Базу знаний
  • 👍 2
Post #2968 673
🤔 Что такое декларативное программирование (HTML, SQL)?

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


Ставь 👍 если знал ответ, 🔥 если нет
Забирай 📚 Базу знаний
  • 🔥 2
Post #2967 709
🤔 Что такое респонсивная верстка?

Респонсивная верстка (Responsive Web Design, RWD) — это подход к разработке веб-страниц, при котором сайт автоматически подстраивается под разные размеры экранов и устройства (десктопы, планшеты, смартфоны).

🚩Как реализуется респонсивность?

🟠Медиа-запросы (CSS Media Queries)
Позволяют менять стили в зависимости от размера экрана.
body {
font-size: 16px;
}

@media (max-width: 768px) {
body {
font-size: 14px;
}
}


🟠Гибкие сетки (Flexible Grids, Flexbox, CSS Grid)
Позволяют располагать элементы на странице так, чтобы они адаптировались под экран.
.container {
display: flex;
flex-wrap: wrap;
}

.item {
flex: 1 1 300px; /* Блоки с минимальной шириной 300px */
}


🟠Отзывчивые изображения (Responsive Images)
Изображения должны подстраиваться под размер экрана.
img {
max-width: 100%;
height: auto;
}


🟠Viewport в `<meta>`
Обязательный тег для адаптивности на мобильных устройствах.
<meta name="viewport" content="width=device-width, initial-scale=1">


Ставь 👍 и забирай 📚 Базу знаний
  • 👍 4
Post #2965 712
🤔 Что такое протокол?

- Это набор правил и соглашений, определяющих, как устройства обмениваются данными;
- Примеры: HTTP, TCP, FTP, DNS, WebSocket;
- Каждый протокол решает свою задачу и работает на определённом уровне.


Ставь 👍 если знал ответ, 🔥 если нет
Забирай 📚 Базу знаний
  • 🔥 2
  • 👍 1
Post #2964 762
🤔 Расскажи про проведение проверок?

Проведение проверок — важный процесс в QA (Quality Assurance), который помогает выявить дефекты до того, как продукт попадет к пользователю. Проверки можно разделить на ручные и автоматизированные, а также на разные уровни тестирования.

🚩Виды проверок в тестировании

🟠Верификация и Валидация
Верификация (Verification) - проверяем, делаем ли мы всё правильно (соответствие требованиям).
Валидация (Validation) – проверяем, правильно ли работает продукт (соответствует ли он ожиданиям пользователя).
Верификация: «В ТЗ написано, что кнопка должна быть зеленой. Она зеленая?» ✅
Валидация: «Пользователь понимает, что это кнопка?» 🤔

🟠Функциональное и нефункциональное тестирование
Функциональные проверки – проверяют, работает ли система по требованиям (например, корректный логин/пароль).
Нефункциональные проверки – проверяют производительность, безопасность, удобство использования.
Функциональная проверка: Если ввести 123456, логин пройдет?
Нефункциональная проверка: Сайт выдержит 1000 пользователей одновременно?

🚩Методы проведения проверок

🟠Ручное тестирование
Проверки выполняются тестировщиком без автоматизированных инструментов. Используются чек-листы, тест-кейсы, exploratory testing.
Проверить, что кнопка "Заказать" работает на всех страницах.
Вручную протестировать корзину в интернет-магазине.

🟠Автоматизированное тестирование
Запуск тестов с помощью кода (Selenium, JUnit, PyTest, Cypress). Подходит для регрессионного тестирования и больших проектов.
@Test
public void testLogin() {
driver.get("https://example.com");
driver.findElement(By.id("username")).sendKeys("user");
driver.findElement(By.id("password")).sendKeys("pass");
driver.findElement(By.id("login")).click();
Assert.assertTrue(driver.getTitle().contains("Dashboard"));
}


Ставь 👍 и забирай 📚 Базу знаний
  • 👍 3
Post #2961 804
🤔 Как тестировщик, что делать если нашёл баг?

1. Убедиться, что это действительно баг (сравнение с требованиями).
2. Сделать скриншот или видео.
3. Оформить баг-репорт в трекере (Jira, Trello и др.): шаги, результат, ожидание, окружение.
4. Уведомить команду, при необходимости — уточнить приоритет.
5. Перепроверить после фикса и закрыть с подтверждением.


Ставь 👍 если знал ответ, 🔥 если нет
Забирай 📚 Базу знаний
  • 👍 5
  • 🔥 1
Post #2960 867
🤔 Какие знаешь нормальные формы?

Нормальные формы (НФ) в реляционной базе данных (БД) — это набор правил и принципов, предназначенных для минимизации избыточности данных и предотвращения аномалий при обновлении. Они помогают строить хорошо структурированные и эффективные базы данных.

🚩Основные нормальные формы

🟠1-я нормальная форма (1НФ)
Требование:
Все атрибуты должны быть атомарными (неделимыми).
В таблице не должно быть повторяющихся строк (каждая строка должна иметь уникальный идентификатор – первичный ключ).

🟠2-я нормальная форма (2НФ)
Требование:
Данные должны быть в 1НФ.
Все неключевые атрибуты должны зависеть от всего первичного ключа, а не от его части.

🟠3-я нормальная форма (3НФ)
Требование:
Данные должны быть в 2НФ.
Все неключевые атрибуты должны зависеть только от первичного ключа и не зависеть друг от друга.

🚩Дополнительные нормальные формы

🟠Бойс-Кодд нормальная форма (BCNF)
Это усиленная 3НФ:
Если есть несколько потенциальных ключей, все детерминирующие (определяющие) атрибуты должны быть ключами.
Убирает зависимости, которые не устраняются в 3НФ.

🟠4-я нормальная форма (4НФ)
Убирает многозначные зависимости (если одна колонка зависит сразу от нескольких значений другой).

🟠5-я нормальная форма (5НФ)
Устраняет зависимости соединения (когда данные логично разделены, но без соединения таблиц теряют смысл).

Ставь 👍 и забирай 📚 Базу знаний
  • 👍 2
Post #2958 847
🤔 Какие severity есть?

Обычно уровни severity (серьёзность дефектов) включают:
- Blocker (блокирующий);
- Critical (критический);
- Major (значительный);
- Minor (незначительный);
- Trivial (мелкий).


Ставь 👍 если знал ответ, 🔥 если нет
Забирай 📚 Базу знаний
  • 👍 2
  • 🔥 1
Post #2957 869
🤔 Какая разница между негативным и позитивным тестированием?

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

🟠Позитивное тестирование
Проверка того, что система работает правильно при вводе корректных и ожидаемых данных.
Сценарии: В нем используются входные данные и сценарии, которые соответствуют требованиям и спецификациям системы. Оно направлено на подтверждение того, что система выполняет свои функции как ожидается. Ввод корректных данных для входа в систему (правильное имя пользователя и пароль). Заполнение формы регистрации с валидными данными. Совершение покупки с действительной кредитной картой.
Тест-кейс: Вход в систему с корректными данными
Шаги:
1. Открыть страницу входа.
2. Ввести корректный логин пользователя.
3. Ввести корректный пароль пользователя.
4. Нажать кнопку "Войти".
Ожидаемый результат: Пользователь успешно входит в систему.


🟠Негативное тестирование
Проверка того, что система правильно обрабатывает некорректные, неожиданные или экстремальные данные и ситуации.
Сценарии: В нем используются входные данные и сценарии, которые выходят за пределы нормальной работы системы. Оно направлено на выявление ошибок и проверку устойчивости системы. Ввод неправильного пароля для входа в систему. Попытка регистрации с уже существующим именем пользователя. Ввод текста вместо чисел в числовые поля.
Тест-кейс: Вход в систему с некорректным паролем
Шаги:
1. Открыть страницу входа.
2. Ввести корректный логин пользователя.
3. Ввести некорректный пароль.
4. Нажать кнопку "Войти".
Ожидаемый результат: Система отображает сообщение об ошибке "Неправильный пароль".


🚩Когда использовать

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

Ставь 👍 и забирай 📚 Базу знаний
  • 👍 3
Post #2956 752
🤔 Когда метод считается Overriding?

Метод считается переопределённым (overriding), когда в подклассе объявляется метод с таким же именем, типом возвращаемого значения и параметрами, как в суперклассе.


Ставь 👍 если знал ответ, 🔥 если нет
Забирай 📚 Базу знаний
  • 👍 3
  • 🔥 1
Post #2954 771
🤔 Какие знаешь логические операторы в JS?

Логические операторы в JavaScript используются для выполнения логических операций над значениями, в основном true и false.

🟠Логическое И (`&&`)
Возвращает true, если оба операнда истинны, иначе false
console.log(true && true);  // true
console.log(true && false); // false
console.log(5 > 3 && 10 < 20); // true


Если первый операнд false, второй даже не проверяется (short-circuiting).
console.log(false && console.log("Это не выведется"));


🟠Логическое ИЛИ (`||`)
Возвращает true, если хотя бы один из операндов истинный.
console.log(true || false);  // true
console.log(false || false); // false
console.log(5 > 10 || 3 < 8); // true


Если первый операнд true, второй даже не проверяется (short-circuiting).
console.log(true || console.log("Это не выведется"));


🟠Логическое НЕ (`!`)
Инвертирует логическое значение.
console.log(!true);  // false
console.log(!false); // true
console.log(!0); // true (так как 0 — это "ложное" значение)


Используется для приведения значений к true или false.
console.log(!!"hello"); // true (не пустая строка → истина)
console.log(!!0); // false (0 → ложь)


🟠Оператор "??" (Nullish Coalescing)
Возвращает первое НЕ null и НЕ undefined значение.
let user = null;
console.log(user ?? "Гость"); // "Гость"

let name = "Иван";
console.log(name ?? "Без имени"); // "Иван"


В отличие от ||, не обрабатывает 0 и "" как ложные значения.
console.log(0 || "По умолчанию");  // "По умолчанию"
console.log(0 ?? "По умолчанию"); // 0 (НЕ заменяется)


🟠Тернарный оператор (`? :`)
Позволяет заменить if...else.
let age = 18;
let message = age >= 18 ? "Доступ разрешен" : "Доступ запрещен";
console.log(message); // "Доступ разрешен"


Ставь 👍 и забирай 📚 Базу знаний
  • 👍 1
Post #2952 799
🤔 К чему пишутся Acceptance критерии?

Acceptance критерии пишутся к User Story или функциональным требованиям, чтобы однозначно определить, когда работа считается завершённой.


Ставь 👍 если знал ответ, 🔥 если нет
Забирай 📚 Базу знаний
  • 🔥 1
Older posts →

About this channel

How can I read @easy_qa_ru without a Telegram account?
TGViewer shows the public web preview Telegram publishes for Тестировщик | Вопросы собесов: recent posts, photos, videos and the subscriber count, with no app, login or account.
How many subscribers does Тестировщик | Вопросы собесов have?
Тестировщик | Вопросы собесов (@easy_qa_ru) has 12.2K subscribers on Telegram, refreshed roughly every 30 minutes.
Does Тестировщик | Вопросы собесов know I viewed it here?
No. Public channel previews carry no viewer identity, and TGViewer has no accounts or tracking of what you look up.
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →