Поделиться через


Учебник Regression Suite Automation Tool

Примечание

Загрузите и сохраните эту страницу в формате PDF с помощью средств веб-браузера.

В этом учебнике представлено несколько дополнительных функций средства Regression Suite Automation Tool (RSAT), включается демонстрационное назначение, а также описываются стратегия и ключевые моменты обучения.

Важные функции RSAT и регистратора задач

Проверка значения поля

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

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

  1. В демонстрационных данных компании USMF создайте запись задачи, которая имеет следующие шаги:

    1. Выберите Управление сведениями о продукте > Продукты > Выпущенные продукты.
    2. Используйте экспресс-фильтр для поиска записей. Например, отфильтруйте по значению 1000 поле Номер номенклатуры.
    3. Выберите Запасы в наличии.
    4. Используйте экспресс-фильтр для поиска записей. Например, отфильтруйте поле Сайт по значению 1.
    5. В списке пометьте выбранную строку.
    6. Убедитесь, что значение поля Доступное общее количество равно 411,0000000000000000.
  2. Сохраните запись задачи как запись разработчика и вложите ее в тестовый случай в Azure DevOps.

  3. Добавьте тестовый случай в план испытаний и загрузите тестовый случай в RSAT.

  4. Откройте файл параметров Excel и перейдите на вкладку TestCaseSteps.

  5. Чтобы обеспечить, что запасы в наличии всегда будут больше 0, перейдите на шаг Проверить общее доступное количество и измените значение с 411 на 0. Измените значение поля Оператор со знака равенства (=) на знак "больше" (>).

  6. Сохраните и закройте файл параметров Excel.

  7. Выберите Отправить, чтобы сохранить изменения, внесенные в файл параметров Excel, в Azure DevOps.

Теперь если в поле Доступное общее количество для указанной номенклатуры в складских запасах значение больше 0 (нуля), тест проходит успешно, независимо от фактического значения запасов в наличии.

Сохраненные переменные и цепочки тестовых случаев

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

Производный тестовый случай

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

Проверка уведомлений и сообщений

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

Уведомление

Вы можете проверить это сообщение через RSAT, вводя текст сообщения на вкладке MessageValidation файла параметров Excel для соответствующей записи.

Вкладка проверки сообщения.

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

Примечание

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

Снимок

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

  • Для использования этой функции при выполнении RSAT с пользовательским интерфейсом откройте файл Microsoft.Dynamics.RegressionSuite.WindowsApp.exe.config в папке установки RSAT (например, C:\Program Files (x86)\Regression Suite Automation Tool) и измените значение следующего элемента с false на true.

    <add key="VerboseSnapshotsEnabled" value="false" />
    
  • Для использования этой функции при выполнении RSAT с помощью интерфейса командной строки (например, Azure DevOps) откройте файл Microsoft.Dynamics.RegressionSuite.ConsoleApp.exe.config в папке установки RSAT (например, C:\Program Files (x86)\Regression Suite Automation Tool) и измените значение следующего элемента с false на true.

    <add key="VerboseSnapshotsEnabled" value="false" />
    

При выполнении тестовых случаев RSAT создает снимки (изображения) шагов и сохраняет их в папке воспроизведения тестовых случаев в рабочем каталоге. В папке воспроизведения отдельная вложенная папка создается с именем StepSnapshots. Эта папка содержит снимки для выполняемых тестовых случаев.

Назначение

Сценарий

  1. Конструктор продуктов создает новый выпущенный продукт.
  2. Менеджер производства запускает производственный заказ, чтобы восстановить уровень запасов в две единицы.
  3. Производство начинается и завершает производственный заказ, и проверяет, что количество в наличии равно двум единицам.
  4. Группа продавцов получает заказ на четыре единицы нового продукта. Поэтому группа продаж обновляет чистые потребности с помощью динамического плана. Поскольку дополнительные мощности отсутствуют, для политики заказа по умолчанию устанавливается значение "купить вместо создания". Поэтому создается спланированный заказ на покупку.
  5. Покупатель добавляет поставщика, подтверждает запланированный заказ на покупку, затем утверждает заказ на покупку.
  6. Когда купленные товары поступают в магазин, оператор магазина выполняет поиск товаров соответствующих заказов на покупку и получает товары. Так как заказ готов, товары могут комплектоваться и упаковываться по заказу на продажу.
  7. Финансовый отдел выполняет разноску накладной по покупке и накладной по продаже.

На следующем рисунке показана последовательность операций для этого сценария.

Последовательность операций для демонстрационного сценария.

На следующем рисунке показана иерархия бизнес-процессов для этого сценария в средстве моделирования бизнес-процессов LCS.

Бизнес-процессы для демонстрационного сценария.

Стратегия — ключевое обучение

Данные

  • Убедитесь в том, что имеются репрезентативные объемы данных (копия производственных/золотых данных конфигурации и перенесенные данные).

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

  • Для повторного выполнения тестов в средах без уровней 1 используйте функцию восстановление на момент времени Azure.

  • Хотя можно использовать функции Excel RANDOM и NOW для создания уникальной комбинации, усилия весьма высоки. Рассмотрим пример:

    product = "AT" &TEXT(NOW(),"yyymmddhhmm")
    

Регистратор задач

  • Прежде чем начать запись, определите сценарии. Хорошо управляемый проект имеет предопределенные сценарии тестирования. Чтобы создать тестовый случай, необходимо оценить, насколько предсказуемым являются результаты этих сценариев тестирования.
  • Разделите записи, если они выполняются другими ролями, или если имеется время ожидания или внешнее событие до следующего шага.
  • Не следует выбирать значения в списках. Вместо этого используйте текстовые форматы, такие как FIFO, AudioRM и SiteWH. При выборе в списке записывается позиция значения в списке, а не само значение. Если в этот список добавлены элементы, положение значения может измениться Поэтому запись будет использовать другой параметр, и остальная часть сценария может быть изменена.
  • Подумайте о поведении нескольких пользователей. Например, не следует предполагать, что вновь созданный заказ на продажу всегда будет выбран автоматически. Вместо этого для поиска правильного заказа обязательно следует использовать фильтр.
  • Используйте функцию копирования в регистраторе задач для сохранения имени вновь созданного продукта, чтобы его можно было использовать в связанных тестовых случаях.
  • Используйте функцию проверки в регистраторе задач для установки контрольных точек, которые проверяют правильность выполнения шагов.

RSAT

  • Чтобы выполнить тест в другой компании, можно изменить эту компанию на вкладке Общие файла параметров Excel. Убедитесь, что параметры и данные доступны в новой выбранной компании.
  • Тестового пользователя можно изменить на вкладке Общие файла параметров Excel. Укажите код электронной почты пользователя, который будет выполнять тестовый случай. Таким образом, тестовый случай может быть выполнен с помощью разрешений безопасности указанного пользователя.
  • Чтобы подождать, пока начнется тест, можно определить паузу на вкладке Общие файла параметров Excel. Эта пауза может использоваться в пакетном задании (например, если рабочий процесс должен выполняться до того, как будет выполнен следующий шаг).

Дополнительные сценарии

CLI

RSAT можно вызывать из окна Командная строка или PowerShell.

Примечание

Убедитесь, что для переменной среды TestRoot установлен путь установки RSAT. (В Microsoft Windows откройте Панель управления, выберите пункт Система и безопасность > Система > Дополнительные параметры системы, затем выберите Переменные среды.)

  1. Откройте окно Командная строка или PowerShell от имени администратора.

  2. Перейдите в каталог установки RSAT.

    cd "c:\Program Files (x86)\Regression Suite Automation Tool\"
    
  3. Выведите список всех команд.

    C:\Program Files (x86)\Regression Suite Automation Tool>Microsoft.Dynamics.RegressionSuite.ConsoleApp.exe help
    
    Usage:
        Microsoft.Dynamics.RegressionSuite.ConsoleApp.exe command
        or
        Microsoft.Dynamics.RegressionSuite.ConsoleApp.exe /settings "C:\Path to\file.settings" command
    
    Available commands:
        ?
        about
        cls
        download
        downloadsuite
        edit
        generate
        generatederived
        generatetestonly
        generatetestsuite
        help
        list
        listtestplans
        listtestsuite
        listtestsuitebyid
        listtestsuitenames
        playback
        playbackbyid
        playbackmany
        playbacksuite
        playbacksuitebyid
        quit
        upload
        uploadrecording
        usage
    

?

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

Microsoft.Dynamics.RegressionSuite.ConsoleApp?[command]

?: Необязательные параметры

command: где [command] — это одна из команд в предыдущем списке.

о программе

Отображается версия установленного RSAT.

Microsoft.Dynamics.RegressionSuite.ConsoleAppabout

cls

Очищает экран.

Microsoft.Dynamics.RegressionSuite.ConsoleAppcls

загрузить

Загружает вложения (запись, выполнение и файлы параметров) для указанного тестового случая из Azure DevOps в выходной каталог. Можно использовать команду list для возврата всех доступных тестовых случаев и использовать любое значение из первого столбца в качестве параметра test_case_id.

Microsoft.Dynamics.RegressionSuite.ConsoleAppdownload[/retry[=<seconds>]] [test_case_id] [output_dir]

download: необязательные ключи
  • /retry[=seconds]: если этот ключ указан и тестовые случаи обращения блокируются другими экземплярами RSAT, процесс загрузки будет ожидать указанное число секунд, а затем будет выполнена повторная попытка. Значение по умолчанию для [seconds] составляет 120 секунд. Без этого ключа процесс будет отменен сразу же после блокирования тестовых случаев.
загрузить: обязательные параметры
  • test_case_id: представляет идентификатор тестового случая.
download: необязательные параметры
  • output_dir: представляет выходной рабочий каталог. Каталог должна существовать. Если этот параметр не указан, будет использоваться рабочий каталог из параметров.
загрузить: примеры

download 123 c:\temp\rsat

download /retry=240 765

downloadsuite

Загружает вложения (файлы записи, выполнения и параметров) для всех тестовых случаев в указанном комплекте тестовых случаев из Azure DevOps в выходной каталог. Можно использовать команду listtestsuitenames для возврата всех доступных тестовых комплектов и использовать любое значение в качестве параметра test_suite_name.

Microsoft.Dynamics.RegressionSuite.ConsoleAppdownloadsuite[/retry[=<seconds>]] ([test_suite_name] | [/byid] [test_suite_id]) [output_dir]

downloadsuite: необязательные ключи
  • /retry[=seconds]: если этот ключ указан и тестовые случаи обращения блокируются другими экземплярами RSAT, процесс загрузки будет ожидать указанное число секунд, а затем будет выполнена повторная попытка. Значение по умолчанию для [seconds] составляет 120 секунд. Без этого ключа процесс будет отменен сразу же после блокирования тестовых случаев.
  • /byid: этот ключ указывает, что требуемый комплект тестов определяется его идентификатором Azure DevOps, а не именем комплекта тестов.
downloadsuite: обязательные параметры
  • test_suite_name: представляет имя набора тестов. Этот параметр является обязательным, если ключ /byid не указан. Это имя является именем комплекта тестов Azure DevOps.
  • test_suite_id: представляет идентификатор набора тестов. Этот параметр является обязательным, если ключ /byid указан. Этот код является идентификатором комплекта тестов Azure DevOps.
downloadsuite: необязательные параметры
  • output_dir: представляет выходной рабочий каталог. Каталог должна существовать. Если этот параметр не указан, будет использоваться рабочий каталог из параметров.
downloadsuite: примеры

downloadsuite NameOfTheSuite c:\temp\rsat

downloadsuite /byid 123 c:\temp\rsat

downloadsuite /retry=240 /byid 765

downloadsuite /retry=240 /byid 765 c:\temp\rsat

изменить

Позволяет открыть файл параметров в программе Excel и изменить его.

Microsoft.Dynamics.RegressionSuite.ConsoleAppedit[excel_file]

изменить: обязательные параметры
  • excel_file: должен содержать полный путь к существующему файлу Excel.
изменить: примеры

edit c:\RSAT\123\TestCase_123_Base.xlsx

edit e:\temp\TestCase_456_Base.xlsx

создать

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

Microsoft.Dynamics.RegressionSuite.ConsoleAppgenerate[/retry[=<seconds>]] [/dllonly] [/keepcustomexcel] [test_case_id] [output_dir]

generate: необязательные ключи
  • /retry[=seconds]: если этот ключ указан и тестовые случаи обращения блокируются другими экземплярами RSAT, процесс создания будет ожидать указанное число секунд, а затем будет выполнена повторная попытка. Значение по умолчанию для [seconds] составляет 120 секунд. Без этого ключа процесс будет отменен сразу же после блокирования тестовых случаев.
  • /dllonly: создание только файлов выполнения тестов. Не создавать повторно файл параметров Excel.
  • /keepcustomexcel: обновление существующего файла параметров. Также повторно создает файлы выполнения.
создать: обязательные параметры
  • test_case_id: представляет идентификатор тестового случая.
generate: необязательные параметры
  • output_dir: представляет выходной рабочий каталог. Каталог должна существовать. Если этот параметр не указан, будет использоваться рабочий каталог из параметров.
создать: примеры

generate 123 c:\temp\rsat

generate /retry=240 765 c:\rsat\last

generate /retry=240 /dllonly 765

generate /retry=240 /keepcustomexcel 765

generatederived

Создает новый производный тестовый случай (дочерний тестовый случай) от предоставленного тестового случая. Новый тестовый случай также добавляется к указанному набору тестов. Можно использовать команду list для возврата всех доступных тестовых случаев и использовать любое значение из первого столбца в качестве параметра test_case_id.

Microsoft.Dynamics.RegressionSuite.ConsoleAppgeneratederived[/retry[=<seconds>]] [parent_test_case_id] [test_plan_id] [test_suite_id]

generatederived: необязательные ключи
  • /retry[=seconds]: если этот ключ указан и тестовые случаи обращения блокируются другими экземплярами RSAT, процесс создания будет ожидать указанное число секунд, а затем будет выполнена повторная попытка. Значение по умолчанию для [seconds] составляет 120 секунд. Без этого ключа процесс будет отменен сразу же после блокирования тестовых случаев.
generatederived: обязательные параметры
  • parent_test_case_id: представляет идентификатор родительского тестового случая.
  • test_plan_id: представляет идентификатор плана тестирования.
  • test_suite_id: представляет идентификатор набора тестов.
generatederived: примеры

generatederived 123 8901 678

generatederived /retry 123 8901 678

generatetestonly

Создает только файлы выполнения тестов для указанного тестового случая. Не создает файл параметров Excel. Файлы создаются в указанном выходном каталоге. Можно использовать команду list для возврата всех доступных тестовых случаев и использовать любое значение из первого столбца в качестве параметра test_case_id.

Microsoft.Dynamics.RegressionSuite.ConsoleAppgeneratetestonly[/retry[=<seconds>]] [test_case_id] [output_dir]

generatetestonly: необязательные ключи
  • /retry[=seconds]: если этот ключ указан и тестовые случаи обращения блокируются другими экземплярами RSAT, процесс создания будет ожидать указанное число секунд, а затем будет выполнена повторная попытка. Значение по умолчанию для [seconds] составляет 120 секунд. Без этого ключа процесс будет отменен сразу же после блокирования тестовых случаев.
generatetestonly: обязательные параметры
  • test_case_id: представляет идентификатор тестового случая.
generatetestonly: необязательные параметры
  • output_dir: представляет выходной рабочий каталог. Каталог должна существовать. Если этот параметр не указан, будет использоваться рабочий каталог из параметров.
generatetestonly: примеры

generatetestonly 123 c:\temp\rsat

generatetestonly /retry=240 765

generatetestsuite

Создает файлы автоматизации тестов для всех тестовых случаев в указанном комплекте тестов. Можно использовать команду listtestsuitenames для возврата всех доступных тестовых комплектов и использовать любое значение в качестве параметра test_suite_name.

Microsoft.Dynamics.RegressionSuite.ConsoleAppgeneratetestsuite[/retry[=<seconds>]] [/dllonly] [/keepcustomexcel] ([test_suite_name] | [/byid] [test_suite_id]) [output_dir]

generatetestsuite: необязательные ключи
  • /retry[=seconds]: если этот ключ указан и тестовые случаи обращения блокируются другими экземплярами RSAT, процесс создания будет ожидать указанное число секунд, а затем будет выполнена повторная попытка. Значение по умолчанию для [seconds] составляет 120 секунд. Без этого ключа процесс будет отменен сразу же после блокирования тестовых случаев.
  • /dllonly: создание только файлов выполнения тестов. Не создавать повторно файл параметров Excel.
  • /keepcustomexcel: обновление существующего файла параметров. Также повторно создает файлы выполнения.
  • /byid: этот ключ указывает, что требуемый комплект тестов определяется его идентификатором Azure DevOps, а не именем комплекта тестов.
generatetestsuite: обязательные параметры
  • test_suite_name: представляет имя набора тестов. Этот параметр является обязательным, если ключ /byid не указан. Это имя является именем комплекта тестов Azure DevOps.
  • test_suite_id: представляет идентификатор набора тестов. Этот параметр является обязательным, если ключ /byid указан. Этот код является идентификатором комплекта тестов Azure DevOps.
generatetestsuite: необязательные параметры
  • output_dir: представляет выходной рабочий каталог. Каталог должна существовать. Если этот параметр не указан, будет использоваться рабочий каталог из параметров.
generatetestsuite: примеры

generatetestsuite Tests c:\temp\rsat

generatetestsuite /retry Purchase c:\rsat\last

generatetestsuite /dllonly /byid 121

generatetestsuite /keepcustomexcel /byid 121

справка

Идентично команде ?.

список

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

Microsoft.Dynamics.RegressionSuite.ConsoleApplist

listtestplans

Список всех доступных планов тестирования.

Microsoft.Dynamics.RegressionSuite.ConsoleApplisttestplans

listtestsuite

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

Microsoft.Dynamics.RegressionSuite.ConsoleApplisttestsuite[test_suite_name]

listtestsuite: обязательные параметры
  • test_suite_name: имя нужного комплекта.
listtestsuite: примеры

listtestsuite "sample suite name"

listtestsuite NameOfTheSuite

listtestsuitebyid

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

Microsoft.Dynamics.RegressionSuite.ConsoleApplisttestsuitebyid[test_suite_id]

listtestsuitebyid: обязательные параметры
  • test_suite_id: идентификатор нужного комплекта.
listtestsuitebyid: примеры

listtestsuitebyid 12345

listtestsuitenames

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

Microsoft.Dynamics.RegressionSuite.ConsoleApplisttestsuitenames

воспроизведение

Воспроизводит тестовый случай, связанный с указанным файлом параметров Excel. Эта команда использует существующие локальные файлы автоматизации и не загружает файлы с Azure DevOps. Эта команда не поддерживается для тестовых случаев для POS Commerce.

Microsoft.Dynamics.RegressionSuite.ConsoleAppplayback[/retry[=<seconds>]] [/comments[="comment"]] [excel_parameter_file]

playback: необязательные ключи
  • /retry[=seconds]: если этот ключ указан и тестовые случаи обращения блокируются другими экземплярами RSAT, процесс воспроизведения будет ожидать указанное число секунд, а затем будет выполнена повторная попытка. Значение по умолчанию для [seconds] составляет 120 секунд. Без этого ключа процесс будет отменен сразу же после блокирования тестовых случаев.
  • /comments[="comment"]: предоставьте пользовательскую информационную строку, которая будет включена в поле Комментарии на страницах сводки и результатов тестов для выполнений тестовых случаев Azure DevOps.
воспроизведение: обязательные параметры
  • excel_parameter_file: полный путь к файлу параметров Excel. Этот файл должен существовать.
воспроизведение: примеры

playback c:\RSAT\2745\attachments\Create_Purchase_Order_2745_Base.xlsx

playback /retry e:\temp\test.xlsx

playback /retry=300 e:\temp\test.xlsx

playback /comments="Payroll solution 10.0.0" e:\temp\test.xlsx

playbackbyid

Воспроизведение нескольких тестовых случаев одновременно. Тестовые случаи определяются по их идентификатору. Эта команда загружает файлы из Azure DevOps. Можно использовать команду list для возврата всех доступных тестовых случаев и использовать любое из значений из первого столбца в качестве параметра test_case_id.

Microsoft.Dynamics.RegressionSuite.ConsoleAppplaybackbyid[/retry[=<seconds>]] [/comments[="comment"]] [test_case_id1] [test_case_id2] ... [test_case_idN]

playbackbyid: необязательные ключи
  • /retry[=seconds]: если этот ключ указан и тестовые случаи обращения блокируются другими экземплярами RSAT, процесс воспроизведения будет ожидать указанное число секунд, а затем будет выполнена повторная попытка. Значение по умолчанию для [seconds] составляет 120 секунд. Без этого ключа процесс будет отменен сразу же после блокирования тестовых случаев.
  • /comments[="comment"]: предоставьте пользовательскую информационную строку, которая будет включена в поле Комментарии на страницах сводки и результатов тестов для выполнений тестовых случаев Azure DevOps.
playbackbyid: обязательные параметры
  • test_case_id1: идентификатор существующего тестового случая.
  • test_case_id2: идентификатор существующего тестового случая.
  • test_case_idN: идентификатор существующего тестового случая.
playbackbyid: примеры

playbackbyid 878

playbackbyid 2345 667 135

playbackbyid /comments="Payroll solution 10.0.0" 2345 667 135

playbackbyid /retry /comments="Payroll solution 10.0.0" 2345 667 135

playbackmany

Воспроизведение нескольких тестовых случаев одновременно. Тестовые случаи определяются файлами параметров Excel. Эта команда использует существующие локальные файлы автоматизации и не загружает файлы с Azure DevOps.

Microsoft.Dynamics.RegressionSuite.ConsoleAppplaybackmany[/retry[=<seconds>]] [/comments[="comment"]] [excel_parameter_file1] [excel_parameter_file2] ... [excel_parameter_fileN]

playbackmany: необязательные ключи
  • /retry[=seconds]: если этот ключ указан и тестовые случаи обращения блокируются другими экземплярами RSAT, процесс воспроизведения будет ожидать указанное число секунд, а затем будет выполнена повторная попытка. Значение по умолчанию для [seconds] составляет 120 секунд. Без этого ключа процесс будет отменен сразу же после блокирования тестовых случаев.
  • /comments[="comment"]: предоставьте пользовательскую информационную строку, которая будет включена в поле Комментарии на страницах сводки и результатов тестов для выполнений тестовых случаев Azure DevOps.
playbackmany: обязательные параметры
  • excel_parameter_file1: полный путь к файлу параметров Excel. Этот файл должен существовать.
  • excel_parameter_file2: полный путь к файлу параметров Excel. Этот файл должен существовать.
  • excel_parameter_fileN: полный путь к файлу параметров Excel. Этот файл должен существовать.
playbackmany: примеры

playbackmany c:\RSAT\2745\attachments\Create_Purchase_Order_2745_Base.xlsx

playbackmany e:\temp\test.xlsx f:\RSAT\sample1.xlsx c:\RSAT\sample2.xlsx

playbackmany /retry=180 /comments="Payroll solution 10.0.0" e:\temp\test.xlsx f:\rsat\sample1.xlsx c:\RSAT\sample2.xlsx

playbacksuite

Воспроизведение всех тестовых случаев из одного или нескольких указанных комплектов тестов. Если указан ключ /local, для воспроизведения будут использоваться локальные вложения. В противном случае вложения будут загружены из Azure DevOps. Можно использовать команду listtestsuitenames для возврата всех доступных тестовых комплектов и использовать любое значение из первого столбца в качестве параметра suite_name.

Microsoft.Dynamics.RegressionSuite.ConsoleAppplaybacksuite[/updatedriver] [/local] [/retry[=<seconds>]] [/comments[="comment"]] ([test_suite_name1] .. [test_suite_nameN] | [/byid] [test_suite_id1] .. [test_suite_idN])

playbacksuite: необязательные ключи
  • /updatedriver: если этот ключ указан, WebDriver Интернет-браузера будет обновлен как требуется до начала процесса воспроизведения.
  • /local: этот ключ указывает на необходимость использования локальных вложений для воспроизведения вместо загрузки файлов из Azure DevOps.
  • /retry[=seconds]: если этот ключ указан и тестовые случаи обращения блокируются другими экземплярами RSAT, процесс воспроизведения будет ожидать указанное число секунд, а затем будет выполнена повторная попытка. Значение по умолчанию для [seconds] составляет 120 секунд. Без этого ключа процесс будет отменен сразу же после блокирования тестовых случаев.
  • /comments[="comment"]: предоставьте пользовательскую информационную строку, которая будет включена в поле Комментарии на страницах сводки и результатов тестов для выполнений тестовых случаев Azure DevOps.
  • /byid: этот ключ указывает, что требуемый комплект тестов определяется его идентификатором Azure DevOps, а не именем комплекта тестов.
playbacksuite: обязательные параметры
  • test_suite_name1: представляет имя набора тестов. Этот параметр является обязательным, если ключ /byid не указан. Это имя является именем комплекта тестов Azure DevOps.
  • test_suite_nameN: представляет имя набора тестов. Этот параметр является обязательным, если ключ /byid не указан. Это имя является именем комплекта тестов Azure DevOps.
  • test_suite_id1: представляет идентификатор набора тестов. Этот параметр является обязательным, если ключ /byid указан. Этот код является идентификатором комплекта тестов Azure DevOps.
  • test_suite_idN: представляет идентификатор набора тестов. Этот параметр является обязательным, если ключ /byid указан. Этот код является идентификатором комплекта тестов Azure DevOps.
playbacksuite: примеры

playbacksuite suiteName

playbacksuite suiteName suiteNameToo

playbacksuite /updatedriver /local /retry=180 /byid 151 156

playbacksuite /updatedriver /local /comments="Payroll solution 10.0.0" /byid 150

playbacksuitebyid

Выполнение всех тестовых случаев в указанном комплекте тестов Azure DevOps.

Microsoft.Dynamics.RegressionSuite.ConsoleAppplaybacksuitebyid[/updatedriver] [/local] [/retry[=<seconds>]] [/comments[="comment"]] [test_suite_id]

playbacksuitebyid: необязательные ключи
  • /retry[=seconds]: если этот ключ указан и тестовые случаи обращения блокируются другими экземплярами RSAT, процесс воспроизведения будет ожидать указанное число секунд, а затем будет выполнена повторная попытка. Значение по умолчанию для [seconds] составляет 120 секунд. Без этого ключа процесс будет отменен сразу же после блокирования тестовых случаев.
  • /comments[="comment"]: предоставьте пользовательскую информационную строку, которая будет включена в поле Комментарии на страницах сводки и результатов тестов для выполнений тестовых случаев Azure DevOps.
  • /byid: этот ключ указывает, что требуемый комплект тестов определяется его идентификатором Azure DevOps, а не именем комплекта тестов.
playbacksuitebyid: обязательные параметры
  • test_suite_id: представляет идентификатор комплекта тестов в том виде, в котором он существует в Azure DevOps.
playbacksuitebyid: примеры

playbacksuitebyid 2900

playbacksuitebyid /retry 2099

playbacksuitebyid /retry=200 2099

playbacksuitebyid /retry=200 /comments="some comment" 2099

закрыть

Закрывает приложение. Эта команда полезна только в том случае, если приложения выполняются в интерактивном режиме.

Microsoft.Dynamics.RegressionSuite.ConsoleAppquit

quit: примеры

quit

отправить

Отправка файлов вложений (файлы записи, выполнения и параметров), относящихся к определенному комплекту тестов или тестовым случаям, в Azure DevOps.

Microsoft.Dynamics.RegressionSuite.ConsoleAppupload([test_suite_name] | [test_case_id1] .. [test_case_idN])

отправить: обязательные параметры
  • test_suite_name: все файлы, которые относятся к определенному набору тестов, будут отправлены.
  • test_case_id1: представляет первый идентификатор тестового случая, который должен быть отправлен. Используйте этот параметр только в том случае, если не указано имя комплекта тестов.
  • test_case_idN: представляет последний идентификатор тестового случая, который должен быть отправлен. Используйте этот параметр только в том случае, если не указано имя комплекта тестов.
отправить: примеры

upload sample_suite

upload 2900

upload 123 456

uploadrecording

Отправляет только файл записи, принадлежащий к одному или нескольким указанным тестовым случаям, в Azure DevOps.

Microsoft.Dynamics.RegressionSuite.ConsoleAppuploadrecording[test_case_id1] .. [test_case_idN]

uploadrecording: обязательные параметры
  • test_case_id1: представляет идентификатор первого тестового случая для записи, который должен быть отправлен в Azure DevOps.
  • test_case_idN: представляет идентификатор последнего тестового случая для записи, который должен быть отправлен в Azure DevOps.
uploadrecording: примеры

uploadrecording 123

uploadrecording 123 456

использование

Отображение трех режимов использования данного приложения.

Microsoft.Dynamics.RegressionSuite.ConsoleAppusage

Выполнение приложения в интерактивном режиме:

  • Microsoft.Dynamics.RegressionSuite.ConsoleApp

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

  • Microsoft.Dynamics.RegressionSuite.ConsoleApp [command]

Выполнение приложения путем указания файла параметров:

  • Microsoft.Dynamics.RegressionSuite.ConsoleApp/settings [drive:\Path to\file.settings] [command]

Примеры Windows PowerShell

Выполнение тестового случая в цикле

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

  • Код клиента
  • Наименование Клиента
  • Адрес клиента

Код клиента будет иметь формат ATCUS<номер>, где <номер> представляет собой значение в диапазоне от 000000001 до 999999999.

В следующем примере для определения первого используемого номера используется один параметр, start. Второй параметр nr служит для определения числа клиентов, которые должны быть созданы. Для каждой итерации параметры в файле параметров Excel изменяются с помощью функции UpdateCustomer. После этого командная строка RSAT вызывается в функции RunTestCase.

Откройте интегрированную среду сценариев Microsoft Windows PowerShell (ISE) в режиме администратора и вставьте следующий код в окно с именем Untitled1.ps1.

param ( [int]$start = 1, [int]$nr = 1 )
function UpdateCustomer
{
    param ([string]$paramFilename, [string]$sheetName, [string]$CustId)
    $xl = New-Object -COM "Excel.Application"
    $xl.Visible = $false
    $wb = $xl.Workbooks.Open($paramFilename)
    $ws = $wb.Sheets.Item($sheetName)
    $ws.Cells.Item(3, 2).Value = "ATCUS" + $CustId
    $ws.Cells.Item(4, 2).Value = "Automated Test Customer " + $CustId
    $ws.Cells.Item(8, 2).Value = "Automated Test Street " + $CustId
    $wb.Save()
    $wb.Close()
    $xl.Quit()
    [System.Runtime.Interopservices.Marshal]::ReleaseComObject($xl)
}
function RunTestCase
{
    param ( [string]$filename )
    $cmd = "cd c:\Program Files (x86)\Regression Suite Automation Tool\ &&  "
    $cmd = $cmd + "Microsoft.Dynamics.RegressionSuite.ConsoleApp.exe playback "
    $cmd = $cmd + $filename
    cmd /c $cmd
}
$excelFilename = "full path to Excel parameter file"
l$sheetName = "DirPartyQuickCreateForm"
for ($i = $start; $i -lt $start + $nr; $i++ )
{
    $CustomerId = $i.ToString("000000000")
    Write-Host "customer : " $CustomerId
    UpdateCustomer $excelFilename $sheetName $CustomerId
    RunTestCase $excelFilename

Выполнение сценария, который зависит от данных в Microsoft Dynamics 365

В следующем примере для поиска статуса заказа на покупку используется вызов по протоколу OData (Open Data Protocol). Если статус не равен выставлена накладная, можно, например, вызвать тестовый случай RSAT, который разносит накладную.

function Odata_Get
{
    Param ( [string] $environment, [string] $cmd )
    [Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12
    $tenant = "your tenant"
    $creds = @{
        grant_type = "client_credentials"
        client_id = "your client application Id"
        client_secret = "your client secret"
        resource = $environment
    }
    $headers = $null
    $bearer = Invoke-RestMethod https://login.microsoftonline.com/$tenant/oauth2/token -Method Post -Body $creds -Headers $headers;
    $headers = @{
        Authorization = "Bearer " + $bearer.access_token
    }
    $Odata_cmd = $environment + '/data/' + $cmd
    return (Invoke-RestMethod -Uri $Odata_cmd -Method Get -Headers $headers -ContentType application/json )
}
function PurchaseOrderStatus
{
    Param ( [string] $environment, [string] $purchaseOrderNumber )
    $cmd = 'PurchaseOrderHeaders?$filter=PurchaseOrderNumber eq '
    $cmd = $cmd + "'" + $purchaseOrderNumber + "'"
    $response = Odata_Get -environment $environment -cmd $cmd
    return $response.value.PurchaseOrderStatus
}
$environment = "https://your environment"
$orderStatus = PurchaseOrderStatus -environment $environment -purchaseOrderNumber '000003'
if ($orderStatus -eq $null) {   write-host 'doesn''t exist'}
elseif ($orderStatus -ne 'invoiced') { RunTestCase "PostInvoice" }