Вопросы и ответы на собеседовании по ручному тестированию

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

🔥 Важное для QA-специалистов! 🔥
В QaRocks ты найдешь туториалы, задачи и полезные книги, которых нет в открытом доступе. Уже более 14.000 подписчиков – будь среди нас! Заходи к нам в телеграм канал QaRocks

Вопрос 1. Что понимают под тестированием программного обеспечения?

Ответ: Тестирование программного обеспечения — это процесс оценки системы для проверки соответствия бизнес-требованиям. Оно измеряет общее качество системы по таким атрибутам, как корректность, полнота, удобство использования, производительность и т. д.

Вопрос 2. Почему необходимо тестирование?

Ответ: Тестирование требуется по следующим причинам:

  1. Тестирование дает уверенность заинтересованным сторонам в том, что продукт работает так, как задумано.
  2. Если из-за недостаточного тестирования пропущенные дефекты попадают к конечному пользователю/заказчику — это наносит ущерб репутации компании-разработчика.
  3. Обнаружение дефектов на ранних этапах SDLC снижает затраты и ресурсы, необходимые для их исправления.
  4. Сокращает время разработки за счет выявления проблем на ранних стадиях.
  5. Команда тестировщиков вносит дополнительный вклад в разработку ПО, предлагая альтернативный взгляд на процесс создания продукта.

Вопрос 3. Когда следует завершать тестирование?

Ответ: Тестирование (как ручное, так и автоматизированное) можно прекратить при выполнении одного или нескольких следующих условий:

  1. После выполнения тест-кейсов — Фаза тестирования может быть остановлена, когда пройден один полный тестовый цикл после последнего известного исправления бага при достижении согласованного процента успешных тестов.
  2. По достижении дедлайна — Тестирование можно прекратить при соблюдении сроков и отсутствии в системе высокоприоритетных дефектов.
  3. На основе среднего времени между отказами — Если по решению стейкхолдеров временной интервал между двумя внутренними сбоями достаточно велик, этап тестирования можно завершить.
  4. На основе показателя покрытия кода — Фазу тестирования можно остановить, когда автоматизированное покрытие кода достигает определенного порогового значения при достаточном проценте успешных тестов и отсутствии критических багов.

Вопрос 4. Что такое обеспечение качества (Quality Assurance) и какие мероприятия оно включает?

Ответ: Обеспечение качества (QA) — это процессно-ориентированный подход, который проверяет, является ли правильным ли процесс разработки продукта и соответствует ли он всем стандартам. QA считается профилактической мерой, поскольку выявляет слабые места в процессе создания ПО. Обеспечение качества включает такие виды деятельности, как анализ документации, анализ тест-кейсов, разборы (walk-throughs), инспекции и т.д.

Вопрос 5. Что такое контроль качества (Quality Control) и какие виды тестирования входят в него?

Ответ: Контроль качества — это продукто-ориентированный подход, который проверяет, соответствует ли разработанный продукт всем указанным требованиям. Это считается корректирующей мерой, так как тестируется готовый продукт для выявления дефектов. QC включает различные виды тестирования, такие как функциональное тестирование, тестирование производительности, юзабилити и т.д.

Вопрос 6. В чем разница между верификацией и валидацией?

Ответ: Ниже перечислены основные различия между верификацией и валидацией.

#ВерификацияВалидация
1.Верификация — это процесс оценки различных артефактов, а также процесса разработки ПО.

Её цель — убедиться, что разрабатываемый продукт будет соответствовать стандартам.
Валидация – это процесс проверки соответствия разработанного программного продукта заданным бизнес-требованиям.
2.Это статичный процесс анализа документов, а не готового продукта.Предполагает динамическое тестирование программного продукта путем его запуска.
3.Верификация — это процессно-ориентированный подход.Валидация — это продукто-ориентированный подход.
4.Отвечает на вопрос: “Правильно ли мы создаем продукт?”Отвечает на вопрос: “Создаем ли мы правильный продукт?”
5.Ошибки, выявленные на этапе верификации, требуют меньших затрат/ресурсов для исправления по сравнению с ошибками, обнаруженными на этапе валидации.Ошибки, выявленные на этапе валидации, требуют больше затрат/ресурсов. Чем позже обнаружена ошибка — тем выше стоимость её исправления.

Ознакомьтесь с нашей подробной информацией о верификации и валидации.

Вопрос 7. Что такое SDLC?

Ответ: SDLC (Software Development Life Cycle) — это жизненный цикл разработки ПО. Это все действия, выполняемые в процессе разработки программного обеспечения — сбор требований, анализ требований, проектирование, кодирование/реализация, тестирование, деплой и сопровождение.

Вопрос 8. Что такое жизненный цикл тестирования ПО (STLC)?

Ответ:  Жизненный цикл тестирования ПО (Software Testing Life Cycle) включает все действия, выполняемые в процессе тестирования программного продукта. Этапы включают:

  • Анализ и проверка требований  – На этом этапе анализируется и проверяется документация по требованиям, а также определяется объем тестирования.
  • Планирование тестирования – На этом этапе определяется стратегия тест-плана, оцениваются трудозатраты на тестирование, выбираются инструменты и стратегия автоматизации.
  • Разработка и анализ тестов – На этом этапе разрабатываются тест-кейсы, подготавливаются тестовые данные и реализуются скрипты для автоматизации.
  • Настройка тестовой среды – Подготавливается тестовая среда, максимально приближенная к реальным условиям.
  • Выполнение тестов – Тест-кейсы выполняются, найденные баги регистрируются и перепроверяются после исправления.
  • Завершение тестирования и отчетность  – Формируется итоговый отчет с результатами тестирования, выводами и метриками.

Вопрос 9. Какие существуют типы тестирования?

Ответ: Тестирование можно разделить на два основных типа:

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

По способу проведения тестирование можно классифицировать на:

  • Тестирование “черного ящика” – При тестировании “черного ящика” тестировщику не требуется знание внутренней архитектуры или реализации системы. Тестировщик взаимодействует с системой через интерфейс, предоставляя входные данные и проверяя полученные выходные.
  • Тестирование “белого ящика” – При тестировании “белого ящика” тестировщик анализирует внутреннюю архитектуру системы, а также качество исходного кода по различным параметрам, таким как оптимизация кода, покрытие кода, возможность повторного использования и т. д.
  • Тестирование “серого ящика” – При тестировании “серого ящика” тестировщик имеет частичный доступ к внутренней архитектуре системы, например, он может иметь доступ к проектной документации или структуре базы данных.

Вопрос 10. Что такое ручное тестирование?

Ответ: Ручное тестирование — это вид тестирования, который включает проверку соответствия приложения требованиям путём выполнения предопределённого набора тест-кейсов вручную, без использования инструментов автоматизации.

Вопрос 11. Что такое автоматизированное тестирование?

Ответ: Автоматизированное тестирование — это вид тестирования ПО, при котором выполнение тест-кейсов автоматизируется с помощью специальных инструментов. Оно позволяет сократить время выполнения тестов, так как написанные тест-скрипты можно запускать автоматически неограниченное количество раз без вмешательства человека.

Вопрос 12. Каковы преимущества автоматизированного тестирования?

Ответ: Некоторые преимущества автоматизированного тестирования:

  1. Выполнение тестов с помощью автоматизации происходит быстро и экономит значительное количество времени.
  2. Тщательно написанные тест-скрипты устраняют возможность человеческой ошибки во время тестирования.
  3. Выполнение тестов может быть запланировано на ночное время с использованием CI-инструментов (например, Jenkins), которые также можно настроить для предоставления ежедневных результатов тестирования соответствующим заинтересованным сторонам.
  4. Автоматизированное тестирование требует гораздо меньше ресурсов. После автоматизации тестов их выполнение практически не требует времени QA-инженеров, что высвобождает их ресурсы для других исследовательских задач.

Вопрос 13. Что такое тестирование производительности?

Ответ: Тестирование производительности — это вид нефункционального тестирования, при котором оценивается работа системы под ожидаемой или повышенной нагрузкой. Основные параметры оценки: время отклика, надёжность, использование ресурсов, масштабируемость. Типы тестирования производительности: нагрузочное, стресс-тестирование, тестирование выносливости, тестирование пиков нагрузки и объёмное тестирование.

Вопрос 14. Что такое тест-план?

Ответ: Тест-план — это формальный документ, описывающий объем тестирования, используемый подход, необходимые ресурсы и временные затраты на выполнение тестирования. Он составляется на основе документов с требованиями (Software Requirement Specifications).

Вопрос 15. Что такое тестовый сценарий?

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

Вопрос 16. Что такое тест-кейс?

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

Вопрос 17. Какие атрибуты может иметь тест-кейс?

Ответ: Тест-кейс может содержать следующие атрибуты:

  1. TestCaseId – Уникальный идентификатор тест-кейса.
  2. Test Summary – Краткое описание тест-кейса в одном предложении.
  3. Description – Подробное описание тест-кейса.
  4. Prerequisite или pre-condition – Набор условий, которые должны быть выполнены перед выполнением тестовых шагов.
  5. Test Steps – Подробные шаги для выполнения тест-кейса.
  6. Expected result – Ожидаемый результат для успешного прохождения теста
  7. Actual result – Фактический результат после выполнения тестовых шагов.
  8. Test Result – Статус выполнения теста (Pass/Fail).
  9. Automation Status – Индикатор автоматизации (является ли тест автоматизированным или нет).
  10. Date – Дата выполнения теста.
  11. Executed by – Имя исполнителя тест-кейса.

Вопрос 18. Что такое тестовые данные?

Ответ: Тестовые данные — это данные, используемые для проверки работы ПО с различными входными значениями, позволяющие определить, соответствует ли фактический результат ожидаемому. Эти данные создаются на основе бизнес-требований.

Вопрос 19. Что такое тестовый скрипт?

Ответ: Тестовый скрипт — это автоматизированный тест-кейс, написанный на любом языке программирования или скриптовом языке. По сути, это набор инструкций для проверки функциональности приложения.

Вопрос 20. Что такое баг?

Ответ: Баг — это дефект в программном продукте, обнаруженный во время тестирования, который приводит к работе продукта в неожиданном режиме.

Вопрос 21. Что такое дефект?

Ответ: Дефект — это несоответствие требованиям продукта, обнаруженное в продакшене (после выпуска продукта).

Вопрос 22. Какие атрибуты включаются в отчёт о дефекте?

Ответ: Основные атрибуты отчёта о дефекте:

  • DefectId – Уникальный идентификатор дефекта.
  • Defect Summary – Краткое описание дефекта (заголовок).
  • Defect Description – Детальное описание дефекта.
  • Steps to reproduce – Шаги для воспроизведения дефекта.
  • Expected Result – Ожидаемое корректное поведение системы.
  • Actual Result – Текущее ошибочное состояние системы.
  • Defect Severity – Степень серьёзности (minor, medium, major, show stopper).
  • Priority  – Определяется срочностью исправления дефекта. Устанавливается по шкале от P0 (наивысший) до P3 (низший).

Вопрос 23. Какие существуют инструменты для управления багами/дефектами?

Ответ: Наиболее широко используемые инструменты управления дефектами: Jira, Bugzilla, Redmine, Mantis, Quality Center и т.д.

Вопрос 24. Что такое приоритет дефекта?

Ответ: Приоритет дефекта — это срочность исправления дефекта. Обычно устанавливается по шкале от P0 (наивысший) до P3, где дефекты P0 требуют максимально срочного исправления.

Вопрос 25. Что такое степень серьёзности дефекта (Defect Severity)?

Ответ: Степень серьёзности дефекта — это показатель влияния дефекта на функциональность системы. В зависимости от организации могут использоваться различные уровни серьёзности — от незначительного (minor) до критического (critical) или блокирующего (show stopper).

Вопрос 26. Что такое блокер?

Ответ: Блокер — это дефект с высоким приоритетом (high priority) и высокой степенью серьёзности (high severity). Он препятствует или блокирует тестирование других важных частей приложения.

Вопрос 27. Объясните жизненный цикл бага или различные состояния бага.

Ответ: В процессе разработки ПО баг проходит следующие этапы:

  • New (Новый) — Баг или дефект при обнаружении находится в состоянии “New”.
  • Assigned (Назначен) — баг назначен конкретному разработчику.
  • Open (В работе) — разработчик начал работу над исправлением.
  • Rejected/Not a bug (Отклонён) — если разработчик считает, что баг не является действительным.
  • Deferred (Отложен) — исправление отложено до следующих версий (по приоритету или срочности).
  • Fixed (Исправлен) — разработчик завершил исправление.
  • Test (На проверке) — баг передан тестировщику для проверки.
  • Reopened (Переоткрыт) — если исправление не прошло проверку.
  • Verified (Подтверждён) — тестировщик подтвердил исправление.
  • Closed (Закрыт) — баг полностью устранён.

Вопрос 28. Что такое статическое тестирование?

Ответ: Статическое тестирование — это вид тестирования, направленный на анализ рабочих продуктов и документации, создаваемых в течение всего проекта. Оно позволяет проверять спецификации, бизнес-требования, документацию, процессы и функциональные требования на начальном этапе тестирования.

Вопрос 29. Что такое динамическое тестирование?

Ответ: Динамическое тестирование — это вид тестирования, выполняемый путём запуска и выполнения тестируемого приложения вручную или с использованием средств автоматизации.

Вопрос 30. Объясните различные типы методов разработки тестов на основе спецификаций.

Ответ: Методы разработки тестов на основе спецификаций (также называемые тестированием “черного ящика”) предполагают тестирование системы без знания её внутренней архитектуры, основываясь только на её спецификациях. Основные методы:

  • Эквивалентное разбиение  – Группировка тестовых данных в логические группы или классы эквивалентности с предположением, что все элементы данных в этих классах будут оказывать одинаковое воздействие на приложение.
  • Анализ граничных значений – Тестирование с использованием граничных значений классов эквивалентности в качестве тестовых входных данных.
  • Таблицы решений – Тестирование с использованием таблиц решений, показывающих поведение приложения на основе различных комбинаций входных значений.
  • Тестирование переходов состояний – Тестирование, при котором изменения, внесенные во входные условия, вызывают изменения состояния или выходные данные тестируемого приложения.  
  • Тестирование на основе сценариев использования – Проверка корректности работы ПО путем имитации действий конечного пользователя.

Вопрос 31. Объясните разбиение на классы эквивалентности.

Ответ: Разбиение на классы эквивалентности — это техника тестирования “чёрного ящика”, основанная на спецификациях. В этом методе входные данные, определяющие различные тестовые условия, разбиваются на логически схожие группы (классы), где использование даже одного тестового значения из группы эквивалентно тестированию со всеми остальными значениями этого класса.

Вопрос 32. Что такое анализ граничных значений?

Ответ: Анализ граничных значений — это техника тестирования ПО для разработки тест-кейсов, в которой граничные значения классов эквивалентного разбиения используются в качестве входных данных для тест-кейсов. Например, если тестовые данные лежат в диапазоне 0-100, анализ граничных значений будет включать тестовые данные: 0, 1, 99, 100.

Вопрос 33. Что такое тестирование по таблице решений?

Ответ:  Тестирование с использованием таблиц решений — это метод проектирования тестов на основе спецификаций (техника “чёрного ящика”), при котором тестирование проводится с помощью таблиц, отображающих поведение приложения при различных комбинациях входных значений.

Вопрос 34. Что такое тестирование переходов состояний?

Ответ: Тестирование переходов состояний — это техника проектирования тестов класса «чёрный ящик», основанная на модели конечного автомата. Метод предполагает, что систему можно описать как набор состояний, а переход между ними происходит под воздействием определённых событий.

Вопрос 35. Что такое тестирование на основе сценариев использования?

Ответ: Тестирование на основе сценариев использования — это подход тестирования “чёрного ящика”, при котором тестирование проводится с использованием use case-сценариев. Сценарий использования рассматривается как взаимодействие между приложением и пользователями. Эти сценарии применяются для описания требований и могут служить основой для приемочного тестирования.

Вопрос 36. Какие существуют уровни тестирования?

Ответ: Тестирование может выполняться на разных этапах процесса разработки. Проведение тестирования на нескольких уровнях помогает выявить ошибки на ранней стадии. Основные уровни тестирования:

  1. Модульное тестирование (юнит тестирование)
  2. Интеграционное тестирование
  3. Системное тестирование
  4. Приемочное тестирование

Вопрос 37. Что такое модульное тестирование (юнит)?

Ответ:  Юнит тестирование — это первый уровень тестирования, который предполагает проверку отдельных модулей/компонентов ПО. Обычно выполняется разработчиками.

Вопрос 38. Что такое интеграционное тестирование?
Ответ: Интеграционное тестирование выполняется после модульного тестирования. Оно проверяет взаимодействие группы связанных модулей и выявляет проблемы на стыке их интерфейсов.

Вопрос 39. Что такое заглушка (Stub)?

Ответ: В случае нисходящего интеграционного тестирования часто бывает, что модули нижнего уровня ещё не разработаны на момент начала тестирования/интеграции с модулями верхнего уровня. В таких случаях используются заглушки или фиктивные модули, которые имитируют работу модулей, предоставляя жестко закодированный или ожидаемый вывод на основе входных значений.

Вопрос 40. Что такое системное тестирование?

Ответ: Системное тестирование — это уровень тестирования, при котором проверяется готовое программное обеспечение как единое целое. В ходе системного тестирования проверяется соответствие приложения бизнес-требованиям.

Вопрос 41. Что такое приемочное тестирование?

Ответ: Приемочное тестирование — это тестирование, выполняемое потенциальными конечными пользователями или заказчиками, чтобы проверить соответствие ПО бизнес-требованиям и возможность его принятия в эксплуатацию.

Вопрос 42. Что такое UAT-тестирование?

Ответ: UAT-тестирование (User Acceptance Testing) — это последняя фаза жизненного цикла тестирования. Его основная задача — подтвердить, что ПО работает в соответствии с бизнес-требованиями. Оно также гарантирует, что приложение удобно для пользователей и оптимально обрабатывает сложные сценарии перед выпуском продукта для реальных пользователей.

Вопрос 43. Что такое сквозное тестирование (End-to-End Testing)?

Ответ: Сквозное тестирование — это вид тестирования, при котором тестируется всё приложение целиком, чтобы проверить, что каждая функция ПО работает, как ожидается, и в нём не осталось уязвимостей. Оно гарантирует, что приложение удобно для пользователя и соответствует бизнес-требованиям.

Вопрос 44. Что такое исследовательское тестирование?

Ответ: Исследовательское тестирование — это подход к тестированию, при котором новые тест-кейсы создаются и модифицируются непосредственно в процессе изучения системы или выполнения тестов. Проектирование и выполнение тестов в исследовательском тестировании происходят параллельно.

Вопрос 45. Что такое нагрузочное тестирование?

Ответ: Нагрузочное тестирование — это тип тестирования производительности, направленный на проверку работы приложения под ожидаемой нагрузкой. В ходе тестирования оценивается время отклика, пропускная способность, частота ошибок и другие параметры приложения.

Вопрос 46. Что такое стресс-тестирование?

Ответ: Стресс-тестирование — это вид тестирования производительности, при котором поведение приложения отслеживается под нагрузкой, превышающей ожидаемую. Стресс-тестирование проводится для выявления утечек памяти и проверки устойчивости приложения.

Вопрос 47. Что такое объемное тестирование?

Ответ: Объемное тестирование — тестирование проводится с увеличением не нагрузки и времени работы, а количества используемых данных, которые хранятся и используются в приложении.

Вопрос 48. Что такое тестирование на выносливость (Soak-тестирование)?

Ответ: Тестирование на выносливость (Soak-тестирование) — это вид тестирования производительности, направленный на выявление таких проблем, как утечки памяти, когда приложение подвергается нагрузочным тестам в течение продолжительного времени.

Вопрос 49. Что такое тестирование пиковых нагрузок (Spike testing)

Ответ: Тестирование пиковых нагрузок  — это вид тестирования производительности, при котором оценивается работа приложения при резком увеличении количества активных пользователей во время нагрузочного теста.

Вопрос 50.  Тестирование пользовательского интерфейса (UI)

Ответ: Тестирование пользовательского интерфейса — это вид тестирования, направленный на выявление дефектов графического интерфейса приложения и проверку его соответствия техническим требованиям.

Вопрос 51. Что такое юзабилити-тестирование?

Ответ: Юзабилити-тестирование — это вид тестирования, направленный на определение того, насколько легко использовать приложение. Оно направлено на выявление дефектов удобства использования в приложении.

Вопрос 52. Что такое тестирование доступности?

Ответ: Тестирование доступности — это вид тестирования, направленный на оценку удобства использования и работы с приложением для людей с ограниченными возможностями.

Вопрос 53. Что такое тестирование совместимости?

Ответ: Тестирование совместимости — это проверка ПО на степень его совместимости с определенной средой: операционной системой, платформой или аппаратным обеспечением.

Вопрос 54.  Что такое тестирование локализации?

Ответ: Тестирование локализации — это вид тестирования, при котором оценивается адаптация приложения (его локализованная версия) для конкретной культуры, региона или страны.

Вопрос 55. Что такое негативное тестирование?

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

Вопрос 56. Что такое тестирование безопасности?

Ответ: Тестирование безопасности — это вид тестирования, целью которого является оценка целостности, аутентификации, авторизации, доступности, конфиденциальности и неотказуемости тестируемого приложения.

Вопрос 57. Что такое пентест?

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

Вопрос 58. Что такое тестирование устойчивости?

Ответ: Тестирование устойчивости — это вид тестирования, проводимый для определения устойчивости приложения, то есть способности системы корректно обрабатывать ошибочные тестовые шаги и некорректные входные данные.

Вопрос 59: Что такое бэкенд-тестирование?

Ответ: Бэкенд-тестирование — это вид тестирования, который включает проверку серверной части системы, а именно тестирование баз данных и API приложения.

Вопрос 60. В чем разница между регрессионным и повторным тестированием?

Ответ: Регрессионное тестирование включает в себя тестирование приложения  для проверки, что изменение кода не влияет на другие части приложения. В то время как повторное тестирование проверяет, исправлена ли конкретная проблема или нет.

Вопрос 61. В чем разница между тестированием «черного ящика» и «белого ящика»?

Ответ: Тестирование «черного ящика» — это тип тестирования, в котором внутренняя архитектура кода не требуется для тестирования. Оно обычно применяется для системного и приемочного тестирования.

В то время как тестирование «белого ящика» требует знания внутренней архитектуры и реализации тестируемого приложения. Оно обычно применяется для модульного и интеграционного тестирования.

Вопрос 62. Как писать эффективные тест-кейсы?

Ответ: Мы можем писать эффективные тест-кейсы, используя следующие подходы:

  • Применение техник тест-дизайна, таких как анализ граничных значений, разбиение на классы эквивалентности, тестирование на основе таблиц решений и т.д.
  • Написание четких и лаконичных тест-кейсов, которые не являются двусмысленными.
  • Следование единой системе наименований также помогает в создании эффективных тест-кейсов.
  • Исключение дублирования предотвращает потерю ресурсов и времени. Поэтому хорошие тест-кейсы не должны содержать избыточных проверок.
  • Использование матрицы трассировки требований помогает обеспечить максимальное покрытие тестами.

Вопрос 63. Что такое матрица трассировки требований (RTM)?

Ответ: В тестировании ПО матрица трассировки требований — это таблица, которая связывает высокоуровневые требования с детализированными требованиями, тест-планами или тест-кейсами. RTM помогает обеспечить 100% покрытие тестами.

Перевод статьи «Manual Testing Interview Questions and Answers».

🔥 Какой была ваша первая зарплата в QA и как вы искали первую работу? 

Мега обсуждение в нашем телеграм-канале о поиске первой работы. Обмен опытом и мнения.

Читать в телеграм

Оставьте комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *