Что происходит, когда вы вводите адрес сайта в браузере?
- Как устроена клиент-серверная архитектура?
- Чем фронтенд отличается от бэкенда?
- Что такое DNS?
Браузер находит IP через DNS, устанавливает соединение (TCP, TLS для HTTPS), отправляет HTTP-запрос, сервер возвращает ответ, браузер отрисовывает страницу и догружает ресурсы.
- Клиент (браузер, приложение) показывает интерфейс, сервер хранит данные и логику
- Фронтенд — то, что выполняется у клиента; бэкенд — на сервере
А ещё Тестировщику важно понимать, на чьей стороне ошибка — это видно в DevTools
Подробно
По шагам:
- DNS. Браузер узнаёт IP-адрес сервера по имени домена: сначала в своём кэше, затем у DNS-серверов.
- Соединение. Устанавливается TCP-соединение; для HTTPS — ещё и TLS-рукопожатие с проверкой сертификата и шифрованием.
- HTTP-запрос. Браузер отправляет запрос: метод (GET), путь, заголовки, cookies.
- Обработка на сервере. Веб-сервер передаёт запрос приложению, оно обращается к базе, другим сервисам и формирует ответ.
- HTTP-ответ. Код статуса (200, 404, 500), заголовки и тело — HTML, JSON, картинка.
- Отрисовка. Браузер разбирает HTML, загружает CSS, JavaScript и картинки отдельными запросами, выполняет скрипты, которые часто делают новые запросы к API.
Клиент-серверная архитектура разделяет роли: клиент показывает интерфейс и отправляет запросы, сервер хранит данные и выполняет бизнес-логику. Фронтенд и бэкенд — части приложения на стороне клиента и сервера соответственно.
Для тестировщика это основа локализации бага: если в DevTools запрос ушёл с верными данными, а сервер ответил 500 — ошибка на бэкенде; если ответ верный, а на экране неправильно — на фронтенде.
Что хотят услышать
- Цепочка: DNS, соединение, запрос, обработка, ответ, отрисовка.
- Роли клиента и сервера.
- Как это помогает понять, на чьей стороне баг.
Частые ошибки
- Пропустить DNS или HTTPS.
- Не понимать, что страница — это много запросов, а не один.
Проверьте себя
Один верный вариант. Подумайте, потом откройте ответ.
Показать варианты и ответ
- ✗Браузер сразу рисует страницу из своего кэша без запросов
- ✗Фронтенд выполняется на сервере базы данных
- ✗Браузер сразу отправляет HTTP-запрос по имени сайта, а TLS устанавливается после получения HTML
- ✓DNS → TCP и TLS → HTTP-запрос → ответ → отрисовка и догрузка ресурсов
Что спросят дальше
Связанные вопросы
Разбор собеседования с sotto
После собеседования sotto разбирает разговор: оценка, каждый вопрос — хорошо, частично или слабо, чего не хватило в ответе и над чем поработать к следующему разу. Первые 30 минут бесплатно.