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

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

Существует два типа незавершенных сеансов в зависимости от их влияния на результаты теста.

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

пример

Допустим, продолжительность тестовой сессии составляет 10 минут, а продолжительность теста – 30 минут. Если сеанс начался в последние пять минут тестового запуска, не будет достаточно времени, чтобы завершить сеанс, и система будет прервать его.

Второй тип включает в себя сеансы с проблемами воспроизведения скрипта. В этих случаях некоторые или все тестовые сессии будут прерваны во время тестового запуска. Хотя результаты теста могут быть представлены в отчете Load Test Summary, журнал тестовых сессий может содержать статистику по меньшему количеству сеансов, чем вы ожидаете, или вообще не имеет статистики (если все тестовые сессии были прерваны). Чтобы устранить неполадки тестов с помощью этого типа незавершенных сеансов, необходимо устранить проблемы, возникли при воспроизведении скрипта.

Есть две основные проблемы, которые приводят к аборту исполнения сценария:

  • Постоянные ошибки, произошедшие в начале выполнения сценария, значительно увеличивают продолжительность сценария. Этот тип сеансов будет прерван во время тайм-аута завершения сценария (15 минут).
  • Несоответствие между продолжительностью сценария и продолжительностью теста, когда продолжительность теста короче фактической продолжительности скрипта. В этом случае времени на завершение воспроизведения сценария не будет достаточно, и все тестовые сессии будут прерваны по завершении теста.

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

Сеансы с ошибками сценариев

Ошибки, допущенные при воспроизведении сценария в самом начале выполнения сценария, являются второй распространенной причиной незавершенных сеансов. Например, ошибки могут возникать из-за замедления нагрузки или ошибок скрипта (например, не действительные входные данные, сбои проверки). Если LoadView не смог воспроизвести действие из сценария, он ждет тайм-аута завершения действия (от 50 сек до 2 мин в зависимости от типа действия) и переходит к следующему действию в скрипте. Как правило, ошибки, произошедшие в начале сценария, приводят к сбою в последующих действиях. Больше неудачных действий в скрипте, больше времени ожидания будет добавлено к продолжительности скрипта. Таким образом, при длинном скрипте продолжительность скрипта может значительно увеличиться и превысить тайм-аут завершения сценария (15 минут). В этом случае LoadView автоматически прерывает сеанс.

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

пример

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

Предполагая, что продолжительность скрипта составляет 2 минуты, и у вас есть 6 навигационных действий и 6 связанных действий проверки ключевых слов, записанных. Система будет ждать 120 секунд (навигация завершения тайм-аута) на каждой навигации, чтобы завершить действие, а затем перейти к последующей проверки ключевого слова. Поскольку навигационный шаг не удался из-за неверных данных входа, система не сможет найти ключевое слово и будет ждать еще 50 секунд (время проверки завершения) для завершения проверки. В этом случае общее время ожидания:

Время ожидания 7 – (120 секунд и 50) – 1020 секунд или около 17 минут

Таким образом, фактическое время выполнения скрипта превысит тайм-аут в 15 минут, и система претвеет сеансы с описанными ошибками и отметит их незавершенными.

Длинные сессии незавершенные из-за короткой продолжительности теста

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

Test Duration = Script Duration * 5

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

Незавершенные сеансы и статистика ошибок тестирования нагрузки

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