atesting.ru Блог 30+ вопросов и ответов на собеседовании по тестированию производительности

30+ вопросов и ответов на собеседовании по тестированию производительности

В этом посте мы рассмотрим список вопросов на собеседовании по тестированию производительности & amp; Ответы как для новичков, так и для опытных тестировщиков.

Вопросы и ответы на собеседовании по тестированию производительности для опытных & amp; Первокурсники

Приступим.

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

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

Тестирование производительности веб-приложений проводится для снижения риска доступности, надежности, масштабируемости, быстродействия, стабильности и т. Д. Системы.

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

№2. Разница между Performance Engineering & amp; Тестирование производительности?

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

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

# 3. Что такое настройка производительности? Какие бывают типы настройки производительности?

Настройка производительности — это процесс, направленный на повышение производительности системы.

Существует два типа настройки производительности.

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

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

№4. Что такое профилирование при тестировании производительности?

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

# 5. Назовите некоторые общие узкие места производительности?

Цель тестирования производительности — устранить узкие места производительности. Ниже перечислены некоторые распространенные узкие места производительности.

  • Загрузка ЦП
  • Использование памяти
  • Использование сети
  • Ограничение программного обеспечения
  • Использование диска

№6. Каковы критерии входа и выхода для тестирования производительности?

Критерии входа: четко определенное соглашение об уровне обслуживания (SLA)/цели производительности
Критерии выхода: достижение SLA/целей производительности

№7. Что входит в процесс тестирования производительности

Определите тестовую среду:

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

Определите критерии приемлемости производительности:

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

Plan & amp; Тесты производительности дизайна:

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

Настройте тестовую среду:

Подготовьте тестовую среду, организуйте инструменты и другие ресурсы перед выполнением

Реализуйте дизайн теста:

Разработайте тесты производительности в соответствии с дизайном теста

< strong> Выполнить тест:

Выполнять и контролировать тесты

Анализировать результаты, составлять отчеты и повторно тестировать:

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

# 8. Когда следует использовать тестирование производительности?

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

# 9. Зачем нам автоматизировать тестирование производительности?

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

# 10. Приведите несколько примеров тестов производительности.

Написание тестовых примеров для тестирования производительности требует другого мышления по сравнению с написанием функциональных тестовых примеров.

Подробнее: Как написать функциональный тест Кейсы

  • Чтобы проверить, способно ли приложение обрабатывать определенное количество одновременных пользователей.
  • Чтобы проверить, находится ли время отклика приложения под нагрузкой в ​​приемлемом диапазоне при медленном сетевом подключении.
  • Чтобы проверить время отклика приложения в условиях низкой, нормальной, умеренной и высокой нагрузки
  • Чтобы проверить, продолжает ли сервер работать без сбоев при высокой нагрузке.
  • Чтобы проверить, возвращается ли приложение к нормальному поведению после пиковой нагрузки.
  • Для проверки сервера базы данных и ЦП и использование памяти приложением при пиковой нагрузке

№11. Какие фазы входят в жизненный цикл тестирования производительности?

Фазы жизненного цикла тестирования производительности следующие

  • Анализ нефункциональных требований
  • Стратегия тестирования производительности
  • Дизайн теста производительности
  • Выполнение теста производительности
  • Анализ результатов теста производительности
  • Контрольные показатели и рекомендации

№12. Разница между функциональным тестированием и нефункциональным тестированием?

< tbody class = "row-hover">

< tr class = "row-6 even">

Функциональное тестирование Нефункциональное тестирование
На самом деле система выполняет функциональное тестирование Насколько хорошо работает система, — это нефункциональное тестирование
Чтобы убедиться, что ваш продукт соответствует потребностям клиентов и бизнеса требований и не содержит серьезных ошибок Чтобы продукт соответствовал ожиданиям клиентов
Чтобы проверить точность программного обеспечения относительно ожидаемого результата Чтобы проверить поведение программного обеспечения при различных условиях нагрузки
Выполняется перед нефункциональным тестированием Выполняется после функционального тестирования
Пример функционального тестового примера — проверка функциональности входа Пример нефункционального тестового примера — проверить, загружается ли домашняя страница менее чем за 2 секунды
Типы тестирования:
• Модульное тестирование
• Дымовое тестирование
• Принятие пользователем
• Интеграционное тестирование
• Регрессионное тестирование
• Локализация
• Глобализация
• Взаимодействие
Типы тестирования:
• Тестирование производительности
• Объемное тестирование
• Масштабируемость
• Тестирование удобства использования
• Нагрузочное тестирование
• Стресс-тестирование
• Тестирование на соответствие
• Переносимость Тестирование
• Тестирование аварийного восстановления
Оно может выполняться вручную или автоматически Это можно сделать эффективно, если автоматизировать

№13. Разница между тестированием производительности, нагрузочным тестированием и & amp; Стресс-тестирование

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

# 14. Какие существуют типы тестирования производительности?

Ниже приведены типы тестирования производительности

  1. Нагрузочное тестирование
  2. Стресс-тестирование
  3. Испытания на выдержку/выносливость.
  4. Испытания на выбросы
  5. Испытания на объем.
  6. Тестирование масштабируемости/тестирование емкости

 30+ вопросов и ответов на собеседовании по тестированию производительности

# 15. Что такое нагрузочное тестирование?

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

Нагрузочное тестирование — это подмножество тестирования производительности и представляет собой тип нефункционального тестирования.

Подробнее: полное руководство по нагрузочному тестированию

# 16. Что такое тестирование масштабируемости/емкости:

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

№17. Что такое объемное тестирование?

Объемное тестирование предназначено для проверки того, может ли система/приложение обрабатывать большой объем данных. Это тестирование сосредоточено на базе данных. Тестировщик производительности, выполняющий объемное тестирование, должен заполнять огромный объем данных в базе данных и отслеживать поведение системы.

# 18. Что такое стресс-тестирование?

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

# 19. Что такое испытания на выдержку/выносливость?

Испытание на выдержку — это испытание на выносливость. Запуск системы при высокой нагрузке в течение длительного периода времени для выявления проблем с производительностью называется тестированием на выдержку. Это необходимо для того, чтобы программное обеспечение могло выдерживать ожидаемую нагрузку в течение длительного периода времени.

№20. Что такое Spike Testing?

Spike Testing — это определение поведения системы при внезапном увеличении нагрузки (большое количество пользователей) на систему.

Подробнее: 100+ типов тестирования программного обеспечения

№21. С какими типичными проблемами производительности сталкивается пользователь?

Некоторые из распространенных проблем производительности, с которыми сталкиваются пользователи, — это

  • более длительное время загрузки
  • < li> Низкое время отклика.

  • Плохая масштабируемость.
  • Узкие места, такие как ошибки кодирования или проблемы с оборудованием.

№22. Назовите некоторые параметры, рассматриваемые для тестирования производительности?

Некоторые из параметров для тестирования производительности:

  • Использование памяти
  • Использование процессора
  • Пропускная способность
  • Страницы памяти
  • Длина сетевой очереди вывода
  • Время отклика
  • Прерывание ЦП в секунду
  • Выделенная память
  • Поток подсчитывает
  • Верхнее ожидание

№23. Какие факторы учитываются при выборе инструментов производительности?

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

  • Бюджет (стоимость лицензии)
  • Типы лицензий
  • Простая установка
  • Поддержка протокола
  • Предпочтение клиента в отношении инструмента нагрузочного тестирования.
  • Стоимость обучения сотрудников выбранному инструменту.
  • Требования к оборудованию и программному обеспечению для инструмента загрузки
  • Политика поддержки и обновления поставщика инструментов.
  • Подробная отчетность
  • Интеграция с облаком

№24. Назовите некоторые популярные инструменты тестирования производительности?

Вот некоторые популярные инструменты тестирования производительности:

  • WebLoad
  • LoadRunner
  • < li> NeoLoad

  • JMeter
  • LoadView
  • Apache JMeter
  • LoadUI Pro

№25. Что такое пропускная способность при тестировании производительности?

Пропускная способность — один из ключевых показателей при тестировании производительности. Он относится к количеству данных, передаваемых между клиентом и сервером за определенный период времени, обычно выражается в битах в секунду (бит/с).

Он рассчитывается с точки зрения количества запросов за раз.

Пропускная способность = (количество запросов)/(общее время)

Пример: биты в секунду, байты в секунду (Bps), килобайты в секунду (KBps), мегабайты в секунду (MBps) и гигабайты в секунду (GBps).

Если сервер получает 60 запросов за один минуту, то пропускная способность составляет один запрос в секунду. Если он получает 120 запросов за одну минуту, то пропускная способность составляет два запроса в секунду. И так далее.

№26. Что означают одновременные пользователи при тестировании производительности?

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

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

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

Вот некоторые из протоколов:

  • HTTP
  • HTTPS
  • FTP
  • Веб-службы
  • Citrix

№28. Что такое параметризация при тестировании производительности?

Параметризация используется для замены жестко запрограммированных значений в скрипте параметром.

# 29. Какая взаимосвязь наблюдается при тестировании производительности?

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

# 30. Что такое базовое тестирование при тестировании производительности?

Это тестирование проводится в приложении перед тем, как прийти к какому-либо заключению и получить ссылку для наших дальнейших тестов. Эти тесты должны помочь нам определить, какой ответ нормален для сервера. Затем мы можем использовать эти значения для настройки утверждения в других тестах.

# 31. Что такое эталонное тестирование при тестировании производительности?

Эталонное тестирование — это процесс сравнения производительности программного или аппаратного обеспечения с отраслевыми стандартами, установленными другими организациями.

На этом я собираюсь завершить этот пост с вопросами о тестировании производительности. Если вы обнаружите, что я не ответил на некоторые вопросы, дайте мне знать в разделе комментариев ниже. Я постараюсь обновить это интервью по тестированию производительности. Вопросы и ответы. Ответы.

TAG: qa