К расширенным режимами тестирования обращаются те, кто не удовлетворен стандартными контрольными примерами для проверки функциональности программных продуктов. Они признают, что продукты будут использоваться различными способами и в различных условиях. Проанализировать все эти разнообразные варианты и написать соответствующие контрольные примеры - задача нелегкая. Кроме того, традиционный подход к выполнению всех контрольных примеров для каждой версии отнимает много времени и усилий.
Эта статья показывает, как использовать Rational Test Workbench для выполнения тестов из интерфейса командной строки и составных тестов.
Режим интерфейса командной строки
Как правило, составитель тестов пишет вручную все скрипты для проверки функций. При добавлении к продукту новых функций незачем выполнять скрипт, написанный всех предыдущих функций. Представьте себе, что у вас есть 40 скриптов теста, написанного для предыдущих версий, и 10 для текущей. Зачем группе тестирования выполнять каждый из 40 "регрессионных" сценариев с текущей версией? Нужен механизм, который запускал бы сразу все сценарии из пакетного файла. Такая автоматизация не только сэкономит время, но и позволит эффективно использовать тестеров.
Сокращенные, ускоренные циклы проверки версий в процессе непрерывной поставки вынуждают тестеров автоматизировать свои сценарии в максимально возможной степени для достижения поставленных целей качества.
Rational Test Workbench позволяет запускать все сценарии автоматических тестов из командной строки, вне рабочей области Eclipse. Достаточно написать скрипты тестов и создать пакетный файл, в котором они перечислены.
Чтобы запустить тест из командной строки:
- Откройте каталог, содержащий файлы
cmdline.bat
и cmdline.sh
. В операционных системах Windows это обычно каталог productInstallationDirectory\cmdline
.Скрипты своих автоматических тестов можно указать в этом файле, чтобы выполнить или запланировать их.
Примечание. При использовании Rational Test Workbench 8.5.1 или более ранних версий в операционных системах Windows каталог, как правило, находится здесь: C:\Program Files\IBM\IBMIMShared\plugins\com.ibm.rational.test.lt.cmdlineexecuteversion_date
.
- Подайте команду, показанную на рисунке 1.
Рисунок 1. Команда запуска теста
Примечание.
- Если путь содержит пробелы, заключите его в кавычки. Чтобы просмотреть интерактивную справку для этой команды, введите
cmdline -help
, находясь в каталоге, содержащем файл .bat
.
- Если не включить аргумент
-quiet
, то будут отображаться сообщения, указывающие, когда тест или график выполнения запущен и когда она завершен.
- Подача команды блокирует рабочую область. Для проверки хода выполнения теста или графика откройте новую рабочую область и проект в ней.
В следующей таблице поясняется каждый аргумент команды.
Аргумент |
Описание |
-workspace |
Обязательный. Полный путь к рабочей области Eclipse. |
-project |
Обязательный. Путь проекта по отношению к рабочей области, включая имя файла. |
-eclipsehome |
Обязательный. Полный путь к каталогу, содержащему файл eclipse.exe или eclipse.sh . |
-plugins |
Обязательный. Полный путь к папке, содержащей подключаемые модули. В операционных системах Windows это обычно папка C:\Program Files\IBM\IBMIMShared\plugins. |
-suite |
Необязательный, но один из аргументов -schedule , -suite или -servicenameoption должен присутствовать. Путь выполняемого теста по отношению к проекту, включая имя файла. |
-varfile |
Необязательный. Полный путь к XML-файлу, содержащему пары имен и значений переменных. |
-servicename |
Необязательный, но один из аргументов -schedule , -suite или -servicenameoption должен присутствовать. Имя запускаемой службы. Вместо запуска теста производительности запускается указанная служба, когда она становится доступной. |
-serviceargs |
Необязательный. Последовательности аргументов для передачи службе, указанной аргументом -servicename . Например, -serviceargs "-myserviceparm1 myserviceparm1value". Значения указаны в кавычках, потому что они содержат пробелы. |
-configfile |
Необязательный. Полный путь к файлу, содержащему параметры выполнения теста или графика. Каждый параметр должен быть в отдельной строке. Для создания файла конфигурации используйте редактор без перевода строк. В файле конфигурации можно указать любые параметры, обязательные и необязательные. Аргументы командной строки переопределяют значения, указанные в этом файле. Note: Файл должен быть в формате UTF-8. Не используйте кавычки в этом файле - даже для значений, содержащих пробелы. |
-results |
Необязательный. Имя файла результатов. По умолчанию файл результатов - это имя теста или графика с добавленной отметкой времени. |
-overwrite |
Необязательный. Определяет, нужно ли перезаписывать файл результатов с тем же именем. Значение по умолчанию true означает, что файл результатов перезаписывается. |
-quiet |
Необязательный. Отключает вывод любых сообщений от модуля запуска и возвращается в командную оболочку при завершении выполнения или попытки выполнения. |
-users |
Необязательный. Переопределяет количество виртуальных пользователей по умолчанию в прогоне. Для графика тестирования значение по умолчанию - количество пользователей, указанное в редакторе графика. Для теста значение по умолчанию - один пользователь. Этот аргумент создает новую копию графика тестирования, содержащую указанное количество пользователей. |
-vmargs |
Необязательный. Передаваемые аргументы виртуальной машины Java. Например, -vmargs "-debug -Xmx512m". Значения указаны в кавычках, потому что они содержат пробелы. Для ввода данных мониторинга ресурсов используйте -vmargs "-Drm.collect=true -Drm.collect.interval= numeric_value_more_than_1000 " . |
-exportlog |
Необязательный. Полный путь к файлу, в котором будет храниться экспортированный журнал событий тестирования в формате HTTP. |
-exportstats |
Необязательный. Полный путь к каталогу, в котором будут храниться экспортируемые данные статистического отчета. Данные статистического отчета хранятся в формате значений, разделенных запятыми, (CSV) в файле с именем, производным от имени отчета. Если аргумент -exportstatreportlist не указан, то экспортируются отчеты, указанные на странице Export Reports указателя отчетов Performance Test Report. |
-exportstatreportlist |
Необязательный. Список разделенных запятой значений абсолютного пути к файлам специальных форматов отчетов (файлы .view), которые используются при экспорте данных статистического отчета с аргументом -exportstats . Этот параметр отменяет настройки рабочей области. Например, -exportstatreportlist c:/customreport.view,c:/customreport2.view. |
-usercomments |
Необязательный. Добавляет текст в кавычках для его отображения в строке отчета User Comments. |
Составные тесты
Метод командной строки экономит время и ресурсы, автоматизируя выполнение скриптов, но время и усилия можно также сэкономить, собрав несколько тестов в один составной тест. Эта функция дает следующие преимущества:
- Разбивка длинного теста на логически меньшие примеры и их объединение в составной тест. Можно создавать сценарии и выполнять их от начала и до конца. Типичным примером составного теста служит процесс онлайн-покупки. Можно создать небольшие тесты для каждой части операции онлайн-покупки, такие как "вход", "выход", "просмотр товара", "добавление в корзину" и "оформление". Затем эти тесты можно объединить в общую последовательность в рамках составного теста. При выполнении составного теста последовательно выполняются составляющие его отдельные тесты.
- Выполнение каждого из небольших тестов в разных доменах, чтобы получить полное покрытие. Например, у вас может быть два теста, которые нужно добавить к составному тесту. Один запускается на мобильном устройстве, а другой - в веб-браузере настольного компьютера.
- Смешивание различных расширений теста в составе одного составного теста. Например, можно создать тест с помощью специального приложения SAP для добавления нового товара. Затем создать другой HTTP-тест или тест с пользовательским веб-интерфейсом для проверки из веб-браузера, обновляется ли статистика по товарным запасам.
Создание составных тестов
Для создания составного теста:
- Создайте проект теста в workbench.
- В перспективе Test Workbench в окне Test Navigator щелкните правой кнопкой мыши на thetest workbenchproject и нажмите кнопку New, а затем Compound Test.
Рисунок 2. Команда меню для создания составного теста
- В диалоговом окне New Compound Test укажите имя составного теста и место, где он будет храниться. По умолчанию тест хранится в рабочей области workbench-проекта теста, который вы выбрали. Можно выбрать другое местоположение проекта.
Рисунок 3. Мастер создания составного теста
Новый составной тест добавляется в папку Compound Tests workbench-проекта теста, которая присутствует в представлении Logical View. Новый тест также отображается в представлении Resource View, в разделе workbench-проекта теста. Содержание и детали элемента теста отображаются в редакторе составных тестов на правой панели.
Создав составной тест, добавьте к нему несколько тестов.
Добавление тестов в составной тест
Добавление тестов в составной тест:
- В представлении Test Navigator дважды щелкните на составном тесте, к которому вы хотите добавить тест. Содержимое составного теста отображаются в области Compound Test Contents редактора составных тестов.
- Выполните одно из следующих действий:
- Нажмите кнопку Add, чтобы добавить тест как первый элемент составного теста.
- Чтобы вставить тест до определенного элемента составного теста, выберите элемент и нажмите кнопку Insert.
- Перетащите тесты из навигатора тестов в редактор составных тестов, поместив его среди других элементов.
Рисунок 4. Добавление теста в составной тест
Откроется диалоговое Select Tests с тестами, имеющимися в рабочей области.
- Выберите тест, который нужно добавить в составной тест, и нажмите кнопку OK. Тест добавится в составной тест и появится среди элементов составного теста в области Compound Test Contents.
Рисунок 5. Выбор теста
Теперь можно добавить следующие элементы составного теста для создания нужного рабочего процесса:
- комментарии к документу теста;
- задержки в процессе тестирования;
- точки синхронизации;
- петли обратной связи;
- папки транзакций;
- обязательные части теста;
- тесты для запуска в случайном порядке.
Дополнительные сведения об элементах тестов см. на странице http://www-01.ibm.com/support/knowledgecenter/SSBLQQ_8.6.0/com.ibm.rational.test.lt.rtw.doc/topics/c_com_edit_tasks.html.
Обратите внимание, что если тест и составной тест содержат одни и те же элементы, например, петли обратной связи или задержки, то эти элементы выполняются несколько раз: как часть теста и как часть составного теста.
Запуск составного теста
Чтобы запустить составной тест:
- Откройте составной тест в представлении Test Navigator.
- Нажмите кнопку Run Compound Test в редакторе составных тестов.
- Если составной тест содержит тест для веб-интерфейса или мобильного устройства, выберите в мастере конфигурации запуска браузер или устройство, на котором нужно запустить тест.
- Нажмите кнопку Finish. Составной тест будет выполнен с отображением результатов.
По завершении выполнения составного теста отображается отчет.
Используйте Rational Test Workbench для запуска тестов из командной строки и рассмотрите возможность добавления нескольких тестов в составной тест, чтобы сэкономить время и усилия.