Будь умным!


У вас вопросы?
У нас ответы:) SamZan.net

Тема- Нагрузочный тест Цель- Создание и проведение нагрузочного теста Основные сведения о нагрузоч

Работа добавлена на сайт samzan.net:

Поможем написать учебную работу

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

Предоплата всего

от 25%

Подписываем

договор

Выберите тип работы:

Скидка 25% при заказе до 2.6.2024

Лабораторная  работа  № 3:  

Тема:  Нагрузочный тест

Цель: Создание и проведение нагрузочного теста

  1.  Основные сведения о нагрузочных тестах

Нагрузочное тестирование приложений предназначено для оценки функциональных характеристик приложения в различных условиях. Нагрузочный тест используется для инкапсуляции таких типов тестов как веб-тесты, модульные, обычные, упорядоченные тесты, которые затем одновременно выполняются виртуальными пользователями. При выполнении этих тестов под нагрузкой формируются определенные результаты, включая счетчики производительности и другие, которые отображаются в таблицах и диаграммах. Например, добавление веб-теста в нагрузочный тест позволяет смоделировать одновременное взаимодействие сотен пользователей, работающих с веб-приложением. Таким образом можно оценить функциональность веб-приложения при максимальной нагрузке до его развертывания, чтобы найти ошибки или узкие места приложения. Microsoft Visual Studio Team System Test Edition предоставляет средство для создания и выполнения нагрузочных тестов. При добавлении в нагрузочный тест веб-тестов моделируются действия пользователей в процессе открытия одновременных подключений к серверу и выполнения нескольких HTTP-запросов. В нагрузочном тесте можно установить свойства, которые будут применены к отдельным веб-тестам.

В данной лабораторной работе выполняются следующие задачи:

  1.  создание нагрузочного теста

  1.  изменение параметров нагрузочного теста

  1.  запуск нагрузочного теста.

 2. Обязательные компоненты для выполнения нагрузочного теста

  1.  Веб-приложение на этапе разработки. Используя сайт, созданный в лабораторной работе №1, рассмотрим разные функции нагрузочного тестирования, обеспечиваемого в Visual Studio 2008.
  2.  Нагрузочный тест может содержать как веб-тесты, так и модульные тесты. Создадим нагрузочный тест, содержащий веб-тест, разработанный при выполнении лабораторной работы №2.

  1.  Создание нагрузочного теста

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

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

  1.  Добро пожаловать (описаны различные этапы создания тестовой нагрузки)
  2.  Сценарий
  3.  Наборы Счетчиков
  4.  Параметры Запуска 

4. Использование мастера создания нагрузочных тестов

Запустите мастер создания нагрузочных тестов

  1.  Откройте решение, содержащее веб-тест (расширение .webtest).
  2.  В Обозревателе решений щелкните правой кнопкой мыши узел проекта. Выберите Добавить, а затем щелкните Нагрузочный тест.
  3.  Будет запущен мастер тестовой нагрузки.
  4.  Откроется начальная страница мастера создания нагрузочных тестов.
  5.  Нажмите кнопку Далее.

5. Изменение параметров сценария нагрузочного теста

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

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

  1.  Введите имя для сценария.
  2.  Выберите предпочтительный профиль времени обработки. Время обработки используется для моделирования поведения человека, которое заключается в ожидании при взаимодействии с веб-узлом. Время обработки возникает между запросами в веб-тесте и между итерациями теста в сценарии тестовой нагрузки. Использование времени обработки в нагрузочном тесте может быть целесообразным в процессе формирования более точного нагрузочного моделирования. Раздел Профиль времени обдумывания содержит опции:
  3.  Использовать записанное время на обдумывание. При этом  указанное время обработки используется точно так, как оно записано в веб-тесте.
  4.  Использовать нормальное распределение с центром на записанных временах обработки. Время на обдумывание используется, но с некоторыми отклонениями значений. Это обеспечивает более реалистичное моделирование виртуальных пользователей за счет небольших изменений интервалов времени обработки между запросами.
  5.  Не использовать время на обдумывание. Данный Параметр используется для создания максимальной нагрузки на веб-сервер.

5.3 Выберите предпочтительное значение времени на обдумывание между итерациями теста. По завершении нажмите кнопку Далее.

  1.  Изменение параметров шаблона нагрузки для сценария тестовой нагрузки

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

Существует два типа моделируемой нагрузки: постоянная  и  пошаговая

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

Шаблон пошаговой нагрузки используется для моделирования нагрузки, создаваемой пользователями, число которых постепенно возрастает до определенного максимума. Для пошаговых нагрузок требуется указать значения Начальное число пользователей, Максимальное число пользователей, Длительность шага (секунд) и Число пользователей на шаге.

Например, пошаговая нагрузка с Начальным числом пользователей равным 1, Максимальным числом пользователей равным 100, Длительностью шага (секунды) равной 10 и Числом пользователей на шаге равным 1 создает шаблон пользовательской нагрузки, который начинается с 1 пользователя и возрастает на 1 каждые 10 секунд, пока не достигнет значения 100 пользователей.

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

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

  1.  Модель набора тестов для нагрузочного теста

Способ моделирования набора тестов:

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

  1.  ПРОЦЕНТ ТЕСТОВОГО НАБОРА, ОСНОВАННЫЙ НА КОЛИЧЕСТВЕ ЗАПУЩЕННЫХ ТЕСТОВ.

Процент, основанный на количестве запущенных тестов

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

  1.  TestA (50%)
  2.  TestB (35%)
  3.  TestC (15%)

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

  1.  ПРОЦЕНТ ТЕСТОВОГО НАБОРА, ОСНОВАННЫЙ НА КОЛИЧЕСТВЕ ВИРТУАЛЬНЫХ ПОЛЬЗОВАТЕЛЕЙ, ЗАПУСТИВШИХ ТЕСТЫ.

Процент, основанный на количестве виртуальных пользователей

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

  1.  ТЕСТОВЫЙ НАБОР, ОСНОВАННЫЙ НА СКОРОСТИ ВЫПОЛНЕНИЯ ТЕСТА (НА ОСНОВЕ ПОЛЬЗОВАТЕЛЬСКОГО ТЕМПА).

Установка скорости для тестового набора

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

  1.  TestA: 4 теста на пользователя в час
  2.  TestB: 2 теста на пользователя в час
  3.  TestC: 0,125 теста на пользователя в час

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

  1.  ТЕСТОВЫЙ НАБОР

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

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

Тесты будут добавлены в тестовый набор. Тестам в наборе автоматически назначается новое распространение.

  1.  Выберите предпочтительные значения вероятности выбора тестов, перемещая ползунки в столбце Распределение. Распределение — это мера вероятности, с который определенный тест выбирается виртуальным пользователем во время нагрузочного тестового запуска. Распределение выражается в процентах. Поэтому сумма значений распределения для всех тестов в сценарии равна 100. Например, если сценарий содержит только один тест, распределение для этого теста равно 100%.

После создания нагрузочного теста можно изменить тестовый набор для любого из сценариев:

Указание тестового набора для существующего нагрузочного теста

  1.  Откройте нагрузочный тест.
  2.  Щелкните правой кнопкой мыши тестовый набор, который требуется изменить, и выберите команду Изменить тестовый набор.
  3.  Откроется диалоговое окно Изменение тестового набора. При необходимости добавьте новые тесты в сценарий.
  4.  Выберите предпочтительные значения вероятности выбора тестов, перемещая ползунки в столбце Распределение. Можно также ввести процентные значения непосредственно в столбец %.
  5.  Выбрав предпочтительные значения распределения, нажмите кнопку ОК.

  1.  Выбор набора обозревателей для сценария нагрузочного теста

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

Набор обозревателей сценария представляет собой сочетание двух факторов: набора обозревателей, входящих в сценарий, и распределения этих обозревателей внутри сценария. Набор обозревателей должен отражать цели каждого конкретного сценария. Например, можно определить набор обозревателей с процентной долей Internet Explorer 6.0, равной 95%, и процентной долей Pocket IE 3.02, равной 5%.

Определение набора обозревателей в мастере тестовой нагрузки

  1.  Чтобы добавить обозреватели в сценарий, на странице Набор обозревателей мастера тестовой нагрузки нажмите кнопку Добавить
  2.  Определите состав набора обозревателей с помощью ползунков в столбце Распределение или путем ввода процентных значений непосредственно в столбец %.
  3.  После выбора набора обозревателей нажмите кнопку Далее.

После создания нагрузочного теста можно изменить набор обозревателей для любого из его сценариев.

Определение набора обозревателей для ранее созданного нагрузочного теста

  1.  Откройте нагрузочный тест.
  2.  Щелкните правой кнопки мыши сценарий, набор обозревателей которого необходимо изменить, и выберите команду Изменить набор обозревателей.Появится диалоговое окно Изменение набора обозревателей. При необходимости добавьте в сценарий новые обозреватели.
  3.  Определите состав набора обозревателей с помощью ползунков в столбце Распределение или путем ввода процентных значений непосредственно в столбец %.
  4.  Выбрав предпочтительные значения распределения, нажмите кнопку ОК.

  1.  Выбор смешанного сетевого профиля для сценария нагрузочного теста

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

Смешанный сетевой профиль должен отражать цели каждого конкретного сценария. Например, можно определить сетевой набор обозревателей с процентной долей 75% локальных сетей и 25% подключений удаленного доступа через модем со скоростью 56 кбит/с.

Определение смешанного сетевого профиля в мастере тестовой нагрузки

  1.  Чтобы добавить сети в сценарий, на странице Смешанный сетевой профиль мастера тестовой нагрузки нажмите кнопку Добавить.
  2.  Определите состав смешанного сетевого профиля с помощью ползунков в столбце Распределение или путем ввода процентных значений непосредственно в столбец.
  3.  После выбора смешанного сетевого профиля нажмите кнопку Далее, чтобы перейти на страницу Наборы счетчиков мастера тестовой нагрузки.

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

Определение смешанного сетевого профиля для существующего нагрузочного теста

  1.  Откройте нагрузочный тест.
  2.  Щелкните правой кнопки мыши сценарий, смешанный сетевой профиль которого необходимо изменить, и выберите команду Изменить набор сетей.Откроется диалоговое окно Изменение смешанного сетевого профиля. При необходимости добавьте в сценарий новые сетевые подключения.
  3.  Определите состав смешанного сетевого профиля с помощью ползунков в столбце Распределение или путем ввода процентных значений непосредственно в столбец %.
  4.  Выбрав предпочтительные значения распределения, нажмите кнопку ОК.

10. Наборы счетчиков при нагрузочном тестировании.

При создании нагрузочного теста в Visual Studio Team System Test Edition указывается набор счетчиков. Набор счетчиков представляет собой счетчики производительности, используемые для наблюдения во время выполнения нагрузочного теста. Наборы счетчиков входят в нагрузочный тест и применяются ко всем его сценариям. Они упорядочены по технологии, например наборы счетчиков ASP.NET или SQL.

Данные наборов счетчиков собираются на указанных компьютерах. Связь между набором счетчиков и компьютером, используемым во время нагрузочного теста, называется сопоставлением набора счетчиков. Например, тестируемый веб-сервер может располагать сопоставлениями набора счетчиков приложений ASP.NET, IIS и .NET.

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

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

Использование наборов счетчиков

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

Данные счетчиков собираются на сервере и на компьютере, где выполняется тест. Если для выполнения тестов установлен набор агентских компьютеров, данные счетчиков будут собраны и на них.

Существует три категории счетчиков: "Проценты", "Количество" и "Средние значения". Их примеры: "Загрузка ЦП: %", "Количество блокировок SQL Server" и "Количество запросов IIS в секунду".

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

Для упрощения сбора данных о производительности на веб-сервере в Test Edition предоставляются предопределенные именованные наборы счетчиков, основанные на технологии, используемой в нагрузочных тестах. Эти наборы можно использовать при анализе работы сервера с IIS, ASP.NET или сервера SQL Server. Счетчики, не указанные в наборе счетчиков по умолчанию, можно добавить с помощью редактора тестовой нагрузки. Добавление компьютеров или серверов, на которых выполняется тестирование, в нагрузочный тест для отслеживания ресурсов, используемых на этих компьютерах, является важным моментом.

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

Установка наборов счетчиков в мастере тестовой нагрузки

  1.  На странице Наборы счетчиков мастера тестовой нагрузки в области Просмотр выбора будут отображены существующие наборы счетчиков. Там уже будут выведены заданные по умолчанию элементы, включая набор счетчиков нагрузочного теста; по умолчанию он собирается контроллером.
  2.  (Необязательно) Нажмите кнопку Добавить компьютер, чтобы добавить новый компьютер, за которым следует вести наблюдение. Появится запрос на ввод имени. Введите имя и под новой записью будут отображены узлы, которые можно выбрать. Например, ADO.NET, IIS, SQL и другие. Установите флажки рядом с узлами, которые нужно выбрать. Новые счетчики появятся в области Просмотр выбора.
  3.  Выбрав наборы счетчиков, нажмите кнопку Далее, чтобы перейти на страницу Параметры запуска мастера тестовой нагрузки.

11. Изменение параметров запуска для нагрузочного теста

  1.  Установите параметр Длительность выполнения равным 2 минутам, чтобы нагрузочный тест был достаточно кратким. При построении веб-тестов и тестов нагрузки рекомендуется проверять правильность настройки и работы с помощью коротких, легких нагрузочных тестов. Поэтому тест должен быть достаточно кратким.
  2.  Нажмите кнопку Готово. Нагрузочный тест будет открыт в редакторе нагрузочных тестов.

При этом образуется нагрузочный тест со всеми параметрами, заданными с помощью мастера, и откроется редактор нагрузочного теста (файл с расширением .loadtest).

Пороговые правила

Главная задача счетчиков и наборов счетчиков  в определении реальной производительности тестируемого приложения, использования памяти и времени, необходимого для процессора. Существует еще одно преимущество в сборе данных этих счетчиков. Мы можем установить пороговые значения  для каждого типа данных, собранных во время теста. Например, нам может понадобиться получать уведомление когда системная память будет почти заполнена. Кроме того, если любой из процессов занимает больше времени, чем ожидалось, мы можем получить уведомление от системы, чтобы принять необходимые  меры. Эти пороговые правила могут быть установлены для каждого из счетчиков производительности.

Выберите счетчик и пункт Add Threshold Rule,  который открывает  диалоговое окно добавления правил.  

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

Compare Constant: Это сравнение значения счетчика производительности с постоянным значением. Например, мы хотим получить предупреждение типа “нарушение работы”, если процессор будет загружен на 70%, и “критическую ошибку” если его загрузка больше 90%.  Опция Alert If Over может быть установлена в значение «истинна» или «ложь» , где «истина» означает что нарушение будет генерироваться в случае если значение счетчика больше заданного порового значения, а «ложь» будет обозначать что нарушение будет генерироваться если значение счетчика меньше указанного порогового значения.

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

Compare Counters(сравнение счетчиков): Это сравнение значения счетчика производительности с другими счетчиками. Функциональность как и при сравнении с константой. Но здесь сравнение идет с переменными значениями а не с постоянными.

На скриншоте выше показаны опции для добавления  Compare Counters в набор счетчиков. Пороговые значения для предупреждения и критических ошибок установлены как константы, которые умножаются на зависимые значения счетчика, а затем сравниваются с его текущим значением.  Например, зависимое значение счетчика равно 50 и если константа установлена в 1.25 как порог предупреждения, то нарушение наступит когда текущее значение счетчика достигнет 62.5.

Скриншот ниже показывает пример порогового нарушения, когда значение превышает константу определенную в правиле. Проверка прерывается, потому что тест был прерван, прежде чем завершился.

Вы можете видеть из графика, что есть три различных нарушения пороговых правил, представленных во время выполнения теста нагрузки. График также показывает, когда значения счетчика достигло значения выше константы, определенной в правиле. Как видно на графике, величина достигла значения 25.13204 что выше чем константа 25, определенная в правиле. Если значение выше допустимого уровня то оно  обозначается желтым цветом и красным если оно достигает критической пороговой величины. Эти правила не провалят тест , но обеспечат предупреждение, если значения выше установленных порогов.

12. Запуск нагрузочного теста

После создания нагрузочного теста запустите его, чтобы увидеть, как веб-узел реагирует на моделирование нагрузки. При работе теста будет открыто окно Монитор тестовой нагрузки.

Чтобы запустить нагрузочный тест необходимы следующие действия:

  1.  Когда нагрузочный тест открыт в редакторе нагрузочных тестов, нажмите зеленую кнопку Выполнить. Нагрузочный тест будет запущен.
  2.  Чтобы увеличить область просмотра, в меню Visual Studio выберите Вид и щелкните Полный экран.
  3.  Если при моделировании нагрузки будут превышены пороговые значения, в узлах дерева управления появятся соответствующие значки. Ошибки помечаются красными кружками, а предупреждения — желтыми треугольниками. Можно найти счетчик, для которого превышено пороговое значение, и получить наглядное представление данных, перетащив значок на диаграмму. Это можно сделать при выполнении теста.




1. Ефекти простого і складного мультиплікаторов
2. Введение.html
3. Фізіологія сенсорних систем шкірний та слуховий аналізатор1
4. по теме Налог на прибыль Задание- рассчитать налог на прибыль организации и заполнить налоговую деклар
5. Work Tht ws why he chose to sty ner the house on those dys
6. реферат дисертації на здобуття наукового ступеня кандидата біологічних наук Львів ~.html
7. ДИПЛОМНАЯ РАБОТА ГОС СПО 030912 3ПР Руководитель.html
8.  г. именуемыйая в дальнейшем
9. Буря і натиск. Літературний рух Німеччини який отримав таку колоритну назву Буря і натиск постав на
10. Лабораторная работа 7
11. Экономические законы и категории
12. Лекция 1112 РНК ~ родоначальник биологической эволюции
13. Екологічні проблеми енергетики
14. массу. В общем ценность белков ни у кого не вызывает сомнений однако практика показывает что на удивленье м
15. Федеративная Республика Германия
16. МИФИ Волгодонский инженернотехнический институт ~ филиал НИЯУ МИФИ
17. Следить чтобы при выполнении упражнений для рук пальцы обеих рук находились всегда в сомкнутом состоянии п
18. Умением проникать в идейное содержание в духовное нравственное начало пьесы и роли создать их интересную
19. Лабораторная работа 1 Тема- Знакомство со средой разработки VisulStudio 2010 Цель- научиться создавать прилож
20.  Личная продажа это инструмент маркетинговых коммуникаций который используется для осуществления прод