После записи теста его можно разбить на более мелкие тесты. Разбиение теста позволяет создавать небольшие тестовые модули, используемые в качестве строительных блоков для создания более крупных тестов. Исходный тест остается неизменным.
Об этой задаче
Функция разбиения теста позволяет записать относительно длинный сценарий, содержащий множество функциональных этапов тестирования приложения, а затем в редакторе разделить тест на более мелкие сегменты, которые можно выполнять в различном порядке в расписании. Мастер определяет, какие переменные должны сохраняться между сегментами теста, и создает связь, освобождающую от написания дополнительного кода.
Процедура
- В Навигаторе тестов найдите тест и дважды щелкните на нем. Тест откроется.
- Выберите в тесте один или несколько элементов для создания нового теста. Выбранные элементы должны идти подряд. Можно выбирать элементы, кроме контейнеров переменных, являющиеся непосредственными потомками корневого узла теста.
- Откройте контекстное меню выбранных элементов и выберите команду Сохранить выбранное как новый тест.
- В окне Сохранить выбранное как новый тест введите имя файла для нового теста, также можно указать описание или комментарий.
- Выберите Также использовать текст описания в качестве комментария в начале каждого теста для добавления содержимого поля Описание/комментарий в качестве комментария в начало нового теста.
- Выберите Отметить выбранные элементы в редакторе, чтобы пометить выбранные элементы в исходном тесте метками в форме [N->, где N - положительное целое число, соответствующее числу сохраненных выборок элементов.
Например, когда первый раз выбранные элементы сохраняются как новый тест, эти элементы в исходном тесте помечаются идентификатором [1->.
Если сохранить три выборки элементов, они будут помечены в исходном тесте идентификаторами [1->, [2-> и [3->.
- Нажмите кнопку Далее.
Выбор режима Отметить выбранные элементы в редакторе упрощает разбиение теста на несколько частей. Метки в редакторе удаляются при закрытии теста. Помеченные элементы теста нельзя сохранить.
Откройте контекстное меню и выберите команду Очистить диапазон, чтобы удалить метки, если нужно сохранить выбранные элементы теста еще раз.
- Необязательно: На следующей странице мастера Сохранить выбранное как новый тест проверьте изменения, которые будут выполнены в результате разбиения. Обычно переключатели Связать тесты через переменные и Специфичные изменения HTTP оставляют включенными. Их выключение может сделать разбиение бесполезным или привести к непредсказуемым результатам. Но можно выключить некоторые переключатели Связать тесты через переменные, если корреляция определенных данных между тестами не нужна.
- Нажмите кнопку Готово.
Результаты
Будет создан новый тест из выбранных элементов. Переменные теста, создаваемые при разбиении теста, добавляются в контейнер Переменные, созданные при разбиении теста в новом тесте. Рекомендуется открыть контейнер Переменные, созданные при разбиении теста в новом тесте и убедиться, что переменные созданы и им присвоены значения выполняющимся тестом, перед тем как делать новое разбиение. Дополнительная информация о переменных теста приведена в разделах О переменных теста и Объявление и присвоение переменных тестов.
Исходный тест помечается, если включен переключатель Отметить выбранные элементы в редакторе. Для того чтобы убрать пометки, откройте контекстное меню выбранных элементов в исходном тесте и выберите команду Очистить диапазон. Также будет предложено удалить новый тест. Нажмите кнопку Да, чтобы удалить новый тест, или Нет, чтобы оставить.
Пример
Следует учитывать то, как разбивается тест, и изменение порядка полученных тестов в расписании. Допустим, visitIBM записал тест, содержащий следующие действия:
- Вход на сервер.
- Создание записи на сервере и удаление записи.
- Изменение записи, проверка факта изменения и восстановление записи.
- Выход с сервера.
Этот тест нужно разбить на четыре части: Вход, Создание, Изменение и Выход. Необходимо разбить тест четыре раза.
- Откройте visitIBM и выберите действия входа. Назовите новый тест, который будет содержать действия входа, Вход.
- Выберите действия создания. Назовите новый тест Создание.
- Выберите действия изменения. Назовите новый тест Изменение.
- Выберите действия выхода. Назовите новый тест Выход.
Затем создайте расписание, выполняющее виртуальных пользователей, выбираемых в пуле данных. Каждый виртуальный пользователь выполняет тест Вход, выполняет различные сочетания тестов Создание и Изменение и в конце выполняет тест Выход.
Но следует иметь в виду, что при разбиении теста тест Создание может инициализировать переменные, которые используются в тесте Изменение. Поэтому при изменении порядка выполнения на обратный, то есть тест Изменение выполняется перед тестом Создание, необходимо сделать так, чтобы общие переменные тестов правильно инициализировались.