2009-08-06 3 views
3

Я реализую расширение для QTP с помощью набора средств расширяемости Web. Если моя функция JScript, которая реализует действие QTP, обнаруживает ошибку (например, пользователь дал неверные значения аргументов), я хочу, чтобы QTP прекратил выполнение теста и уведомил пользователя об ошибке. Я хочу, чтобы он выступал в качестве обычной ошибки в QTP и спрашивал, хочет ли пользователь отлаживать \ retry \ skip \ stop выполнение.QTP Web Extensibilty - Как заставить QTP прекратить выполнение теста

Как я могу это сделать?

ответ

1

Если вы бросаете исключение со строкой, то сообщение, которое вы бросьте представлена ​​в QTP, как и любой другой ошибки сценария (StopRetryПропуститьDebug)

Вы должны бросить JavaScript Error object так что QTP сможет отобразить содержательное сообщение:

throw Error("I'm sorry, Dave. I'm afraid I can't do " + action); 
+0

Когда я попробовал это, я получил сообщение в проводнике, в котором говорится, что t: Исключение было выбрано и не было обнаружено. Спросить меня, хочу ли я его отладить. После нажатия no, я получаю желаемое сообщение QTP, но описание ошибки все равно «Исключение было выбрано и не было обнаружено». – Eldad

+1

Исключение из проводника связано с тем, что у вас нет 'Отключить отладку скрипта (Internet Exploere)' checked (из 'Tools -> Internet Options -> Advanced'), который является рекомендуемым режимом при работе с QTP. – Motti

+0

Со строковыми переменными (var e = "error"; throw e;), весь JS-файл не работает. С строковыми литералами (throw «error»;) Я все равно получаю то же самое: Описание: Исключение брошено и не поймано – Eldad

Смежные вопросы