Перейти к содержимому

Фотография

Распознавание компонентов


  • Авторизуйтесь для ответа в теме
Сообщений в теме: 4

#1 nazarov

nazarov

    Новый участник

  • Members
  • Pip
  • 24 сообщений
  • ФИО:CB-1

Отправлено 06 сентября 2006 - 12:20

Доброго всем времени суток. Вопрос по Rational Robot-у. Не судите строго, но полазив по форуму я не нашел того, что искал.

Вопрос в том, как Роботом находить на форме нужные компоненты и добираться до их свойств. Проверять их и если что-то не так выдавать предупреждение. Тестируемые приложения написаны на Delphi. Заранее благодарю!
  • 0

#2 Tiana

Tiana

    Активный участник

  • Members
  • PipPip
  • 81 сообщений
  • ФИО:Girnyk S. Tatyana
  • Город:Украина, Харьков

Отправлено 06 сентября 2006 - 12:47

Вам помогут:
- найти объект: SQAFindObject ()
- определить значения его свойств: SQAGetProperty ()
  • 0

#3 greyver

greyver

    Опытный участник

  • Members
  • PipPipPipPip
  • 358 сообщений
  • ФИО:Вербенко Сергей Анатольевич
  • Город:Москва, Зеленоград


Отправлено 06 сентября 2006 - 13:39

Посмотрите здесь.
  • 0

#4 Гость_drcoor_*

Гость_drcoor_*
  • Guests

Отправлено 06 сентября 2006 - 15:34

В добавок к вышесказанному, вот Вам для примера 2 кусочка одного скрипта, в котором эти функции применяются.
Смысл его в том, что через форму смотрится определённая запись в базе, запоминаются значения полей, потом запись по определённым правилам дублируется и проверяется, как продублировались значения полей:

Sub Main
...
Dim Result As Integer
Dim Value as Variant
Dim Vih_N as Variant
....

'здесь просто проверяется, что в поле ввода типа "Дата" подставилась текущая дата:

Result=SQAGetProperty("Class=TDBDateEdit;ClassIndex=5","Text",Value) ' - получаем значение поля
Value = Format(Value,"Short Date") ' - конвертируем в пригодный для сравнения формат
if Value <> Date then
SQALogMessage sqaWarning,"Должна быть текущая дата" ' - сравниваем - если не текущая, то пишем в лог предупреждение
End If
_______________________________________________
...
_______________________________________________

'а в этом кусочке как раз считывание проперти, запоминание и последующее сравнение:

Result=SQAGetProperty("Type=EditBox;ObjectIndex=12","Text",Vih_N) ' - считали свойство "Text" объекта EditBox;ObjectIndex=12 (поле ввода) и запомнили в переменную Vih_N

....
'что-то поделали с приложением
....

'пришло время сравнить, что было и что получилось:

Result=SQAGetProperty("Type=EditBox;ObjectIndex=12","Text",Value)
if Value <> Vih_N then
SQALogMessage sqaWarning, "Неправильное копирование исходящего номера", ""
End If


в дополнение - в Роботе есть инструмент "Инспектор", он применяется для нахождения на форме и получения свойвств компонент в "ручном режиме" - его тоже надо обязательно использовать :crazy:

#5 nazarov

nazarov

    Новый участник

  • Members
  • Pip
  • 24 сообщений
  • ФИО:CB-1

Отправлено 07 сентября 2006 - 10:19

Спасибо вам всем огромное! Про инспектора не знал и мечтал, чтобы было подобное! Работает! Разобрался! :shok:
  • 0


Количество пользователей, читающих эту тему: 0

0 пользователей, 0 гостей, 0 анонимных