Обработка исключений - PullRequest
1 голос
/ 22 сентября 2008

Не могли бы вы уточнить следующий запрос? Я не уверен, правильно ли я пытаюсь написать код. Пожалуйста, сообщите мне, если я двигаюсь в правильном / неправильном направлении.

Я пытаюсь разработать среду автоматизации с использованием QuickTest Professional , инструмента тестирования.

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

Ответы [ 2 ]

1 голос
/ 22 сентября 2008

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

Теперь я еще долгое время не создавал VBScript, поэтому, псевдо это:

While Not EndOfExcelSheet
    ReadDataFromExcel();
    If errOccurred Then TakeScreenPrint();
    'NOTE: We have caught the error and requested the screen print
    'is taken, but we have NOT bubbled the exception up!
End While
0 голосов
/ 22 сентября 2008

Трудно ответить на ваш вопрос, основываясь на том, что вы написали, но первое, что приходит мне в голову, это добавить логический параметр в вашу функцию обработки исключений (назовем ее ExceptionHandler). Скажем, если параметр (назовем его ExitLoop) равен true, вы выйдете из «всего цикла», в противном случае продолжите. Теперь это может быть слишком утомительно, чтобы изменить это для старых вызовов функции (вызовов без нового параметра) - я не уверен, поддерживает ли VB перегрузку функции. В этом случае вы можете переименовать ваш ExceptionHandler в ExceptionHandler2, добавить в него новый параметр (ExitLoop) и логику и создать (теперь новую) функцию ExceptionHandler, которая вызывает ExceptionHandler2 со своими параметрами плюс значение true для ExitLoop.

Надеюсь, это поможет.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...