и посмотреть медиа
Tester | Interview Questions
и посмотреть медиа
Interview questions for testers.
Interview questions for testers.
AI bot for text-to-speech and voice cloning in Telegram. Create audio using neural network quickly and easily.
Testing questions: ISTQB, Selenium, API. With examples.
🤔 Что такое системное тестирование? Системное тестирование – это тип тестирования, при котором проверяется вся система целиком на соответствие требованиям. Оно проводится после интеграционного тестирования и перед приемочным (UAT). 🚩Ключевые особенности Тестируется вся система целиком, а не отдельные модули. Имитируются реальные условия работы (используются настоящие API, БД, UI и внешние сервисы). Проверяются все аспекты системы – функциональность, безопасность, производительность, совместимость и т. д. 🚩Что тестируется? 🟠Функциональность соответствует ли система требованиям? Например, в интернет-магазине проверяется, можно ли добавить товар в корзину и оформить заказ. 🟠Производительность – как система работает под нагрузкой? Проверяют скорость отклика, стабильность при 1000+ пользователей. 🟠Безопасность – есть ли уязвимости? Проверяют защиту паролей, SQL-инъекции, XSS. 🟠Совместимость – работает ли система на разных устройствах и браузерах? Например, тестирование сайта на Chrome, Firefox, Safari. 🟠UI/UX-тестирование - удобен ли интерфейс? Проверяется расположение кнопок, читаемость, удобство использования. Ставь 👍 и забирай 📚 Базу знаний
Открыть канал и посмотреть медиа🤔 Что известно про бета-тестирование? Это этап, когда продукт предоставляется ограниченному числу реальных пользователей перед официальным выпуском. 1. Оно позволяет собрать отзывы, выявить баги и протестировать приложение в реальных условиях. 2. Бета-тестирование помогает улучшить пользовательский опыт и минимизировать риски. Ставь 👍 если знал ответ, 🔥 если нет Забирай 📚 Базу знаний
Открыть канал и посмотреть медиа🤔 Когда нужен чек лист? Чек-лист необходим в различных ситуациях для организации и структурирования процесса тестирования. Он помогает обеспечить, что все важные аспекты и функции приложения проверены, и ни одна критическая область не упущена. 🚩Основные случаи применения 🟠Регрессионное тестирование Чтобы убедиться, что все важные функции приложения работают после внесения изменений в код. 🟠Санитарное тестирование (Sanity Testing) Быстрая проверка критических функций после мелких изменений или исправлений. 🟠Смоук-тестирование (Smoke Testing) Первичная проверка основных функций системы перед началом более детального тестирования. 🟠Тестирование по сценариям (Scenario-Based Testing) Проверка специфических сценариев использования приложения, чтобы убедиться, что они выполняются правильно. 🟠Ручное тестирование (Manual Testing) Помогает тестировщикам не пропустить важные шаги и систематизировать процесс. 🟠Повторяющиеся тесты Когда необходимо многократно выполнять одни и те же тесты в течение длительного времени, чек-лист помогает поддерживать качество и последовательность. 🟠Тестирование по требованию Для тестирования специфических требований и бизнес-правил, чтобы убедиться, что они правильно реализованы. 🟠Новые члены команды Чек-лист помогает новым членам команды быстрее освоиться и следовать установленным процессам. 🚩Пример 1⃣Авторизация Проверка ввода корректного логина и пароля. Проверка реакции на некорректный логин и пароль. Проверка функции восстановления пароля. 2⃣Корзина Добавление товара в корзину. Удаление товара из корзины. Обновление количества товара в корзине. 3⃣Оформление заказа Проверка процесса ввода данных для доставки. Проверка различных методов оплаты. Проверка отправки подтверждения заказа. Ставь 👍 и забирай 📚 Базу знаний
Открыть канал и посмотреть медиа🤔 Возможно ли объединить позиции в одну группу, но искать не среднюю, а в строку вывести через запятую значения цен? Да, в SQL это делается через функции группировки со строковой агрегацией, например, STRING_AGG, GROUP_CONCAT. На уровне клиента можно собрать значения в массив и объединить строкой. Ставь 👍 если знал ответ, 🔥 если нет Забирай 📚 Базу знаний
Открыть канал и посмотреть медиа🤔 В каких случаях используются неявные ( implicit ) ожидания? Неявные ожидания (Implicit Waits) используются в Selenium WebDriver, когда нужно подождать, пока элемент появится на странице, но без явного указания времени ожидания в каждом отдельном месте кода. 🚩Как работают неявные ожидания? Когда мы устанавливаем неявное ожидание, WebDriver автоматически ждёт заданное количество секунд перед тем, как выбросить исключение NoSuchElementException. driver.manage().timeouts().implicitlyWait(Duration.ofSeconds(10)); 🚩Когда использовать неявные ожидания? 🟠Когда элементы загружаются с задержкой Если страница загружена, но элементы появляются не сразу (например, из-за AJAX-запросов), то implicitlyWait() поможет избежать ошибок. 🟠Если на всей странице встречаются задержки в появлении элементов Например, если в тестах постоянно встречается задержка в появлении кнопок, ссылок и т.д. 🟠Когда нет необходимости в детальном контроле ожидания каждого элемента Если тесту достаточно универсального времени ожидания (например, 5-10 секунд). 🚩Когда не использовать неявные ожидания? 🟠При необходимости более гибкого ожидания Например, если один элемент загружается 2 секунды, а другой – 15 секунд, лучше использовать WebDriverWait (явные ожидания). 🟠При использовании явных ожиданий (`Explicit Wait`) в одном тесте Selenium не рекомендует смешивать implicitlyWait() и explicitWait(), так как это может привести к непредсказуемым задержкам. 🚩Пример сравнения: Неявное vs. Явное ожидание Неявное ожидание driver.manage().timeouts().implicitlyWait(Duration.ofSeconds(10)); WebElement button = driver.findElement(By.id("submit")); // WebDriver подождёт до 10 сек. button.click(); Явное ожидание (лучше для конкретных случаев) WebDriverWait wait = new WebDriverWait(driver, Duration.ofSeconds(10)); WebElement button = wait.until(ExpectedConditions.elementToBeClickable(By.id("submit"))); button.click(); Ставь 👍 и забирай 📚 Базу знаний
Открыть канал и посмотреть медиа🤔 Smoke, Sanity и Regression — в чём отличия? - Smoke-тестирование — поверхностная проверка: запускается ли система, работает ли основная функциональность. Проверка "дышит ли". - Sanity-тестирование — быстрая проверка конкретных изменений, чтобы убедиться, что они работают и ничего не сломали рядом. - Regression-тестирование — полное тестирование всей системы, чтобы убедиться, что новые изменения не повлияли на старую функциональность. Smoke — базовая проверка, Sanity — локальная, Regression — глубокая. Ставь 👍 если знал ответ, 🔥 если нет Забирай 📚 Базу знаний
Открыть канал и посмотреть медиа🤔 Как протестировать сеть веб серверов? Тестирование сети веб-серверов включает проверку доступности, производительности, отказоустойчивости и безопасности*. 🚩Тестирование доступности (Availability Testing) Проверяет, доступны ли серверы и корректно ли они отвечают на запросы. Ping (ICMP-тест) – проверяет, жив ли сервер: ping example.com Проверка HTTP-ответа (cURL, requests) curl -I Ссылка скрыта Пример на Python: import requests response = requests.get("Ссылка скрыта print(response.status_code) # 200 - ОК 🚩Тестирование производительности (Performance Testing) Проверяет, как сеть серверов справляется с нагрузкой. Тестирование нагрузки (Load Testing) – как сервер ведёт себя при обычной нагрузке. Стресс-тестирование (Stress Testing) – что случится при перегрузке. Тестирование устойчивости (Soak Testing) – работа сервера под нагрузкой длительное время. Apache JMeter – эмулирует тысячи запросов к серверу. Locust – тестирование нагрузки на Python. k6 – современный инструмент для нагрузки (использует JavaScript). from locust import HttpUser, task class LoadTest(HttpUser): @task def test_index(self): self.client.get("/") 🚩Тестирование отказоустойчивости (Failover Testing) Проверяет, как сеть реагирует на сбои серверов. Отключение одного из серверов и проверка, работает ли балансировщик нагрузки. Симуляция отказа сети (tc в Linux) sudo tc qdisc add dev eth0 root netem loss 50% 🚩Тестирование безопасности (Security Testing) Проверяет, защищены ли серверы от атак. DDoS-тестирование – проверка защиты от перегрузки запросами. SQL-инъекции, XSS, CSRF – тестирование уязвимостей. Проверка SSL (Qualys SSL Labs) – тест на безопасность HTTPS. Пример сканирования уязвимостей с nmap: nmap -A example.com Пример теста на SQL-инъекцию с SQLMap sqlmap -u "Ссылка скрыта --dbs Ставь 👍 и забирай 📚 Базу знаний
Открыть канал и посмотреть медиа🤔 Что такое тестирование надёжности? Тестирование надёжности проверяет: - насколько система устойчива к сбоям; - как работает при частичных отказах; - как ведёт себя при долгой работе без перезапуска. Важно для критичных систем, где долговременная бесперебойная работа обязательна. Ставь 👍 если знал ответ, 🔥 если нет Забирай 📚 Базу знаний
Открыть канал и посмотреть медиа🤔 Почему некоторые запросы являются секьюрными? Некоторые HTTP-запросы считаются секьюрными (защищёнными), потому что они передают чувствительные данные, такие как: Логины и пароли (авторизация). Персональные данные (ФИО, адрес, телефон, банковские данные). Токены и ключи API (аутентификация, доступ к закрытым ресурсам). Финансовые операции (переводы, платежи). 🚩Основные причины, почему запросы должны быть защищёнными 🟠Передача чувствительных данных Пример POST /login Content-Type: application/json { "username": "admin", "password": "123456" } 🟠Запросы, изменяющие данные (модифицирующие запросы) Пример POST /transfer { "from": "user1", "to": "user2", "amount": 1000 } 🟠Защита от подмены (Man-in-the-Middle, MITM-атаки) Если запрос передаётся по HTTP, злоумышленник в сети Wi-Fi может перехватить и изменить его. 🟠Аутентификация и авторизация (проверка прав доступа) Пример GET /user/profile Authorization: Bearer abc123 🟠Защита от SQL-инъекций Небезопасный запрос POST /search { "query": "' OR 1=1 --" } 🚩Как сделать запросы секьюрными? Использовать HTTPS (SSL/TLS). Передавать токены в заголовках, а не в URL. Использовать аутентификацию и авторизацию (JWT, OAuth). Добавлять CSRF-защиту для POST-запросов. Фильтровать входные данные (SQL-инъекции, XSS). Ставь 👍 и забирай 📚 Базу знаний
Открыть канал и посмотреть медиаOnly registered users can share their opinion.
Be the first to share your impression of this resource!