Вы просматриваете старую версию данной страницы. Смотрите текущую версию.

Сравнить с текущим просмотр истории страницы

« Предыдущий Версия 13 Следующий »

Try-catch/Перехват ошибок Версия 19 (Net)

Группа действий: Базовые действия 


Описания

Данное действие предназначено для обработки исключений в выбранных действиях


Иконка

Параметры

Входные параметры

Блок Try        - Действия для выполнения, во время исполнения которых может произойти исключение

Блок Catch   - Действия для обработки возникшего исключения

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

Исключения - Список исключений, для обработки которых предназначена соответствующая последовательность Catch.

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

Блок Finally - Действия для выполнения в любом случае.

Выходные параметры 

На выходе получаем ошибку возникшую в ходе выполнения блока Try

Настройки

СвойствоАнгл. наименованиеОписаниеТипПример заполненияОбязательность заполнения поля
Параметры
Блок TryTry clause

Действия для выполнения, во время исполнения которых может произойти исключение

!! Данный параметр не отображается и назначается системой автоматически

Идентификатор последовательности действий

Да


Действия в блоке должны быть

Блок CatchCatch clause

Действия для обработки возникшего исключения

Таких блоков может быть несколько, тогда будет создан параметр "Исключения для CATCH <номер последовательности>" для каждого из добавленных блоков

!! Данный параметр не отображается и назначается системой автоматически

Идентификатор последовательности действий

Нет



Действий в блоке может не быть


ИсключенияExceptions

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


Таких последовательностей может быть несколько, тогда будет создан параметр "Исключения для CATCH <номер последовательности>" для каждой из добавленных

Коллекция


Да
Блок FinallyFinally clauseДействия для выполнения в любом случаеИдентификатор последовательности действий

Нет



Блока может не быть

Результаты
ОшибкаError

Ошибка возникшая в ходе выполнения блока Try

Идентификатор типа исключения



Особые условия использования

Если в блоке/блоках Catch отсутствуют действия, то студия продолжит работу ,проигнорировав отловленные ошибки.

Если в блоке Finally отсутствуют действия, то студия продолжит работу.

Порядок работы с Try-Catch

  1. Выбрать действие «Try-Catch» из группы действий «Базовые действия» и перетащить  на рабочую область.
  2. В блок «Try» поместить действия, для которых будет выполнено исключение. В блок «Catch» поместить действия, которые будут выполнены, если возникнет исключение, т.е. какая-либо ситуация, когда действие выполнено некорректно, иными словами, возникнет ошибка. Если блок «Catch» не заполнен, то робот продолжит работу сценария, проигнорировав возникшие ошибки.
    Пример заполнения: 

    Блоков «Сatch» может быть несколько, тогда для каждого блока будет создан параметр «Исключение для CATCH [Номер блока]». Это нужно, когда для каждой возможной ошибки есть свой вариант действия.
    Пример:
    Действие «Try-Catch» в сценарии: 

Заполненные параметры действия «Try-Catch»: 

Таким образом, если веб-элемент не будет найден, то робот выполнит действие из блока «Catch», а если возникнет неизвестная ошибка, то робот выполнит действие из блока «CATCH 2». 

3.  Заполнить параметры действия «Try-Catch».
Параметры заполняются в формате коллекции, представляющей собой список исключений, для обработки которых предназначена соответствующая последовательность Catch.
Доступно несколько типов ошибок.  Для выбора типа ошибки необходимо нажать на выбранный тип, а затем на стрелку рядом с ним. 


После перенесения всех необходимых типов ошибок, нажать кнопку «Сохранить». 

Пример заполненных параметров: 

Пример заполненных параметров для нескольких блоков «Catch».

Блок Finally
Блок Finally является не обязательным блоком. Действия, указанные в этом блоке, выполнятся вне зависимости от того, возникла ошибка или нет. Если в блоке Finally отсутствуют действия, то робот продолжит свою работу.

Пример заполнения блока Finally:

Выше были рассмотрены общие моменты работы с действием «Try-Catch». Рассмотрим кейс «Погода», где продемонстрирована работа этого действия.

Пример использования 

Задача

Роботу необходимо зайти в поисковую систему, сделать запрос «Погода» и получить сегодняшнюю температуру, а затем сохранить ее в excel-файл.
Задача простая, но в ходе ее выполнения могут возникнуть ошибки.

Решение

воспользоваться действием «Try-Catch» для обработки возможных ошибок.  

Реализация

  1. Поместить все действия сценария в блок «Try»,
  2. В блок «Catch» поместить действие «Сообщение», в котором робот сообщит, что возникла ошибка при работе с браузером.
  3. В блок «CATCH 2» поместить действие «Сообщение», которое сообщит, что ошибка произошла в действии группы «Excel».

       4. В блоке Finally поместить информационное сообщение о том, что робот закончил работу.

Пример заполнения блока «Try»

Пример заполнения блока «Catch»


5. Заполнить параметры: выбрать типы ошибок, которые могут возникнуть во время работы с действиями группы «Браузеры» для блока «Catch». 



И типы ошибок, которые могут возникнуть в результате работы с действиями группы «Excel» из предложенных для блока «CATCH 2».


Результат: 


Затем на экране появилось сообщение из блока «Finally». 


При работе робота произошла ошибка, анализируя лог в студии, можно увидеть, как робот остановил работу с действиями в блоке «Try», перешел в блок «CATCH 2» и вывел на экран информационное сообщение. 

Из-за наличия блока «Try-Cath» робот завершил свою работу без ошибок , несмотря на то, что при открытии файла возникла ошибка.

  • Нет меток