Отладка приложений



              

Применение утилиты Tester - часть 2


Дополнительно, TWindow позволяет перечислить все дочерние окна, которые принадлежат конкретному родителю. Последний объект в этом листинге — Tlnput, который поддерживает единственный метод PlayKeys, направляющий клавишные команды окну, имеющему фокус.

В листинге 13-2 показан объект TNotify, используемый в VBScript-тесте. При разработке сценариев автоматизации один из наиболее трудных случаев для обработки — когда неожиданно раскрывается окно, например, панель сообщений от утверждений. Объект TNotify делает его моментальный снимок, обеспечивая тем самым, аварийный обработчик для таких событий. Простой сценарий, приведенный в листинге 13-2, отыскивает окна с заголовком "Блокнот".

 Листинг 13-2. Использование TNotify в VBScript 

' VBScript-тест для отображения обработчиков оконных уведомлений

' Константы для подпрограммы TNotify.AddNotification . Если бы я

' использовал Visual Basic 6, то определил бы здесь константы типа enum .

Const antDestroyWindow = 1

Const antCreateWindow = 2

Const antCreateAndDestroy = 3

Const ansExactMatch = 0

Const ansBeginMatch = 1

Const ansAnyLocMatch = 2

' Создать объекты tSystem и tInput.

Dim tSystem

Dim tInput

Set tSystem = WScript.CreateObject ( "Tester.TSystem")

Set tlnput = WScript.CreateObject ( "Tester.Tlnput")

' Переменная объекта TNotify

Dim Notifier

' Создать объект TNotify.

Set Notifier =

WScript.CreateObject ( "Tester.TNotify" ,' _

"NotepadNotification_" )

' Добавить нужные уведомления. В этой демонстрации используются два

' уведомления — window destroy (ликвидация окна) и

'window create (создание окна). Все возможные комбинации уведомлений 

'см. исходный код TNotify .

Notifier.AddNotification antCreateAndDestroy, _

ansAnyLocMatch , 

_ "Notepad"

' Запуск программы Блокнот.

 tSystem.Execute "NOTEPAD.EXE" 

' Ожидать полсекунды.

 tSystem.Pause 500

' Из-за того что Visual Basic не является потокобезопасным языком,




Содержание  Назад  Вперед