Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Тестирование / Метод.указания.doc
Скачиваний:
63
Добавлен:
01.05.2014
Размер:
801 Кб
Скачать

Вспомогательные функции

Все вспомогательные функции сгруппируем следующим образом:

  • функции имитации клавиатурного ввода;

  • функции имитации действий, выполняемых мышью;

  • функции работы с системой;

  • функции оповещения о результатах;

  • функции синхронизации;

  • функции для проверки существования объекта;

  • функции работы с файлами.

Функции имитации клавиатурного ввода

Rational Robot предоставляет пользователю две функции имитации клавиатурного ввода: InputKeys и InputChars. Различие этих функций состоит в том, что InputKeys передает объекты в фокусе непосредственного значения клавиш, тогда как InputChars передает любое значение как строку. В исполнении InputKeys F1 – это функциональная клавиша вызова Help, а в исполнении InputChars – это строка со значением F1. Таким образом, формат функций таков:

InputKeys keytext$,

где keytext$ - строка, описывающая клавиатурный ввод. Обозначение функциональных клавиш, таких как Ctrl, Shift и т.д., должно начинаться знаком { и заканчиваться знаком }.

InputChars keytext$

Функциональные клавиши и их значения

Клавиша

Значение

F1

F1

F2

F2

F3

F3

F4

F4

F5

F5

F6

F6

F7

F7

F8

F8

F9

F9

F10

F10

F11

F11

F12

F12

Enter

Enter

Esc

Esc

Shift

LeftShift/RightShift

Alt

LeftAlt/RightAlt

Ctrl

LeftCtrl/RightCtrl

Insert

Insert

Home

Home

Delete

Delete

Page Up

PgUp

Page Down

PgDown

End

End

Up

Up

Down

Down

Left

Left

Right

Right

Backspace

Backspace

Функции имитации действий, выполняемых мышью

Rational Robot предоставляет пользователю 48 различных способов щелчка мыши.

Object MouseAction recType$,

где Object – объект, которому передается пользовательский щелчок мыши;

recType$ - способ определения объекта;

MouseAction – вид щелчка мыши:

Click – левой кнопкой;

Middle_Click – средней кнопкой;

Right_Click – правой кнопкой;

Shift_Click – левой кнопкой при нажатой клавише Shift;

Shift_Middle_Click – средней кнопкой при нажатой клавише Shift;

Shift_Right_Click – правой кнопкой при нажатой клавише Shift;

Alt_Click – левой кнопкой при нажатой клавише Alt;

Alt _Middle_Click – средней кнопкой при нажатой клавише Alt;

Alt _Right_Click – правой кнопкой при нажатой клавише Alt;

Ctrl_Click – левой кнопкой при нажатой клавише Ctrl;

Ctrl _Middle_Click – средней кнопкой при нажатой клавише Ctrl;

Ctrl _Right_Click – правой кнопкой при нажатой клавише Ctrl;

ShiftCtrl _Click – левой кнопкой при нажатых клавишах Shift+Ctrl;

ShiftCtrl _Middle_Click – средней кнопкой при нажатых клавишах Shift+Ctrl;

ShiftCtrl _Right_Click – правой кнопкой при нажатых клавишах Shift+Ctrl;

ShiftAlt_Click – левой кнопкой при нажатых клавишах Shift+Alt;

ShiftAlt_Middle_Click – средней кнопкой при нажатых клавишах Shift+Alt;

ShiftAlt _Right_Click – правой кнопкой при нажатых клавишах Shift+Alt;

CtrlAlt_Click – левой кнопкой при нажатых клавишах Ctrl+Alt;

CtrlAlt_Middle_Click – средней кнопкой при нажатых клавишах Ctrl+Alt;

CtrlAlt_Right_Click – правой кнопкой при нажатых клавишах Ctrl+Alt;

ShiftCtrlAlt_Click – левой кнопкой при нажатых клавишах Shift+Ctrl+Alt;

ShiftCtrlAlt_Middle_Click – средней кнопкой при нажатых клавишах Shift+Ctrl+Alt;

ShiftCtrlAlt_Right_Click – правой кнопкой при нажатых клавишах Shift+Ctrl+Alt;

DblClick – двойной, левой кнопкой;

Middle_DblClick – двойной, средней кнопкой;

Right_DblClick – двойной, правой кнопкой;

Shift_DblClick – двойной, левой кнопкой при нажатой клавише Shift;

Shift_Middle_DblClick – двойной, средней кнопкой при нажатой клавише Shift;

Shift_Right_DblClick – двойной, правой кнопкой при нажатой клавише Shift;

Alt_DblClick – двойной, левой кнопкой при нажатой клавише Alt;

Alt _Middle_DblClick – двойной, средней кнопкой при нажатой клавише Alt;

Alt _Right_DblClick – двойной, правой кнопкой при нажатой клавише Alt;

Ctrl_DblClick – двойной, левой кнопкой при нажатой клавише Ctrl;

Ctrl _Middle_DblClick – двойной, средней кнопкой при нажатой клавише Ctrl;

Ctrl _Right_DblClick – двойной, правой кнопкой при нажатой клавише Ctrl;

ShiftCtrl _DblClick – двойной, левой кнопкой при нажатых клавишах Shift+Ctrl;

ShiftCtrl _Middle_DblClick – двойной, средней кнопкой при нажатых клавишах Shift+Ctrl;

ShiftCtrl _Right_DblClick – двойной, правой кнопкой при нажатых клавишах Shift+Ctrl;

ShiftAlt_DblClick – двойной, левой кнопкой при нажатых клавишах Shift+Alt;

ShiftAlt_Middle_DblClick – двойной, средней кнопкой при нажатых клавишах Shift+Alt;

ShiftAlt _Right_DblClick – двойной, правой кнопкой при нажатых клавишах Shift+Alt;

CtrlAlt_DblClick – двойной, левой кнопкой при нажатых клавишах Ctrl+Alt;

CtrlAlt_Middle_DblClick – двойной, средней кнопкой при нажатых клавишах Ctrl+Alt;

CtrlAlt_Right_DblClick – двойной, правой кнопкой при нажатых клавишах Ctrl+Alt;

ShiftCtrlAlt_DblClick – двойной, левой кнопкой при нажатых клавишах Shift+Ctrl+Alt;

ShiftCtrlAlt_Middle_DblClick – двойной, средней кнопкой при нажатых клавишах Shift+Ctrl+Alt;

ShiftCtrlAlt_Right_DblClick – двойной, правой кнопкой при нажатых клавишах Shift+Ctrl+Alt;

Функции работы с системой

Rational Robot имеет две функции работы с системой: SQAShellExecute и StartApplication. Функции практически идентичны, разница только в том, что SQAShellExecute ожидает от пользователя или исполняемый файл, или правильную строку запуска DOS, тогда как StartApplication позволяет открыть файл, используя программу запуска, указанную в реестре.

SQAShellExecute filename$, directory$, parameters$,

где filename$ - полный путь и имя программы/файла;

directory$ - путь по умолчанию для запускаемой программы;

parameters$ - параметры командной строки.

StartApplication Pathname$,

где Pathname$ - полный путь и имя запускаемой программы/файла. Может включать в себя параметры и правильно составленную строку запуска DOS.

Функции оповещения о результатах

Rationel Robot предоставляет пользователю всего одну функцию оповещения результатов SQALogMessage.

SQALogMessage code%, message$, description$,

где code% - статус выполнения скрипта:

  • sqaPass – скрипт прошел без ошибок;

  • sqaFail – при прохождении скрипта найдена ошибка;

  • sqaWarning – при прохождении скрипта найдена внештатная ситуация;

  • sqaNone – сообщение пользователя;

message$ - описанипе ошибки, сообщения или выполняемого шага;

description$ - детальное описание ошибки, сообщения или выполняемого шага.

Пример: SQALogMessage sqaPass, “Последний шаг”, “Тест пройден без ошибок”

SQALogMessage sqaFail, “Найдено несоответствие данных”

SQALogMessage sqaWarning, “Объект класса EditBox не найден”

SQALogMessage sqaNone, “Значение переменной Result: ” & Str(Result), “”

Функции синхронизации

Rational Robot предоставляет пользователю только одну функцию синхронизации DelayFor. Ее назначение – задержка исполнения скрипта на данное количество времени.

DelayFor milliseconds$,

где milliseconds$ – время задержки в миллисекундах.

Функции для проверки существования объекта

Rational предоставляет всего одну функцию – SQAFindObject().Эта функция возвращает результат поиска данного объекта:

SQAFindObject(recType$),

где recType$ - способ определения объекта.

Кроме того, существует функция SQAWaitForObject, которая объединяет в себе функции синхронизации и определения существования объекта:

SQAWaitForObject(recType$,milliseconds$),

где recType$ - способ определения объекта;

milliseconds$ – время задержки в миллисекундах.

Функции работы с файлами

Rational предоставила пользователю 21 функцию работы с файлами: Close, Eof, FreeFiel, Get, Input Function, Line Input, Loc, Lock, Lof, Open, Print, Put, Reset, Seek Function, Seek Statement, Spc, Tab, Unlock, Width, Write. Рассмотрим используемые наиболее часто:

Данная функция открывает файл для работы с ним (запись и/или чтение)

Open filename$ [For mode] [Access access] As filenumber%,

где filename – полное имя открываемого файла;

mode – свойство открываемого файла, может быть следующим:

  • Input – последовательное чтение из файла;

  • Output – последовательная запись в файл;

  • Append – последовательное добавление в файл;

  • Random – случайный доступ;

  • Binary – доступ к бинарным данным;

access – настройка характера работы с файлом, может быть следующей:

  • Read – только чтение;

  • Write – только запись;

  • ReadWrite – запись и чтение (по умолчанию);

filenumber% - цифра от 1 до 255, назначаемая файлу.

Функция, устанавливающая позицию чтения/записи в файле

Seek filenumber%, position$,

где position$ - новое значение позиции.

Данная функция читает одну строку из указанного файла

Line Input filenumber%, varname$,

где varname$ - переменная, хранящая прочитанную строку.

Функция записи одной строки в файл

Print filenumber%, expressionlist,

где expressionlist – переменная, хранящая выражение для записи в файл.

Функция, закрывающая файл по окончании работы с ним:

Close filenumber%.

Обработка ошибок

Rational Robot имеет те же возможности ошибок, что и VBScript. Средства обработки ошибок представляют собой конструкции On Error…Go to и On Error…Resume Next и ряд функций.

Конструкция On Error…Go to – типичный обработчик ошибок VBScript. В случае обнаружения ошибки в обрабатываемом коде исполнение передается блоку кода, указанному в Go to-части конструкции:

On Error Go to ErrHdl1

statements1

ErrHdl1:

statements2,

где statements1 – блок кода-под-наблюдением;

statements2 - блок кода, непосредственно обрабатывающий произошедшую ошибку.

Конструкция On Error…Resume Next – тоже обработчик ошибок VBScript. В случае обнаружения ошибки в срабатываемом коде исполнение передается строке кода, следующей после той, в которой произошла ошибка:

On Error Resume Next

statement1

statement2

Rational Robot предлагает следующие функции работы с ошибками:

  • Erl – возвращает номер строки, в которой произошла ошибка;

  • Error() – возвращает информацию об ошибке;

  • Err = n% - возвращает цифровой код ошибки в переменную n%;

  • Err() – возвращает цифровой код последней «пойманной» ошибки;

  • Error errornaumber% - осуществляет «ручной» вызов ошибки с кодом errornumber%.

Функции пользователя

SQABasic реализует разбиение на процедуры и функции. В данном случае процедура - это

функция, которая не возвращает значения.

Процедура пользователя определяется следующим образом:

[ Static ] [Private ] Sub name [ ([ Optional ]) arg [As type ] ,…) ]

[statement_block]

End Sub,

где Static, Private – определение класса функции;

Optional – флаг указания обязательности параметра;

type – тип передаваемых данных.

Функция пользователя определяется следующим образом:

[ Static ] [Private ] Function name [ ([ Optional ]) arg [As type ] ,…) ] [ As functype ]

name = expression

End Function,

где functype – тип возвращаемого значения;

name = expression – возвращаемое значение.

Управление процессом исполнения

SQABasic имеет функцию вызова скрипта следующего вида:

CallScript script$,

где script$ - имя скрипта.

Функция вызывает скрипт script$.

Функция загрузки библиотеки функций SQABasic имеет следующий синтаксис:

‘$Include: “filename”,

где filename – имя библиотеки функций.

Функция включает библиотеку функций filename в список компиляции.