суббота, 9 ноября 2013 г.

GUI-тестирование "по-русски". О цикле WHILE

Предыдущая серия была тут - http://18delphi.blogspot.ru/2013/11/gui_9.html

У нас конечно есть цикл WHILE.

Выглядит он так:
@ 
// @ - оператор взятия "адреса слова", о нём я напишу позже
НЕ (
// - НЕ - ПРЕФИКСНЫЙ оператор отрицания, о нём я напишу позже
( "Контрол в фокусе" ЯВЛЯЕТСЯ "Строкой ввода")
) WHILE (
 "Переместить фокус на следующий контрол"
)
Введём слово "пока":
WORDWORKER2 пока
 WordToWork1 WHILE ( WordToWork2 DO )
END // пока

Тогда пример можно переписать так:

 пока НЕ ( "Контрол в фокусе" ЯВЛЯЕТСЯ "Строкой ввода")
  "Переместить фокус на следующий контрол"

Введём слово "НЕ ЯВЛЯЕТСЯ":

BOOLEAN WORDWORKERFUNСTION "НЕ ЯВЛЯЕТСЯ" OBJECT IN aControl
 НЕ ( aControl ЯВЛЯЕТСЯ ( WordToWork DO ) ) =: Result
END // "НЕ ЯВЛЯЕТСЯ" 

Тогда пример можно переписать так:

 пока "Контрол в фокусе" "НЕ ЯВЛЯЕТСЯ" "Строкой ввода"
  "Переместить фокус на следующий контрол"

Ну и "последний штрих":

WORDWORKER выполнять
 WordToWork DO
END // выполнять

Тогда пример принимает такой вид:

 пока "Контрол в фокусе" "НЕ ЯВЛЯЕТСЯ" "Строкой ввода" выполнять "Переместить фокус на следующий контрол"

Ну и ещё "штрих":

WordAlias Пока пока

И конечный вид примера:

Пока "Контрол в фокусе" "НЕ ЯВЛЯЕТСЯ" "Строкой ввода" выполнять "Переместить фокус на следующий контрол"

Ну и "сахар":

WordAlias "Перемещение фокуса на следующий контрол" "Переместить фокус на следующий контрол"

И "почти по-русски":

 Пока "Контрол в фокусе" "НЕ ЯВЛЯЕТСЯ" "Строкой ввода" выполнять "Перемещение фокуса на следующий контрол"

Некоторые кстати пишут мне - "это всё банально".. Завидую...

Комментариев нет:

Отправить комментарий