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

Фотография

Считывание значения в ячейке DataGrid


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

#1 Fizalis

Fizalis

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

  • Members
  • Pip
  • 15 сообщений

Отправлено 07 мая 2009 - 13:23

Здравствуйте,

Сейчас пытаюсь опробовать в "полевых условиях" различные программы для автоматического тестирования, и пришла очередь Rational Robot (самая последняя доступная версия 7.0.2.01).

Задачка такая - создаем юзера с неким ID (допустим, 123), дальше открываем список всех юзеров (где их довольно много) и открываем того самого юзера с ID 123, которого только что создали. Открыть можно либо даблкликом по координатам на строке с юзером (это не подходит, ибо список скроллится), либо можно выделить первый элемент таблицы и дальше действовать по схеме: проверяем ID юзера в строке, если это не он, то жмем "вниз", если он, то жмем "энтер".

Проблема в том, что я не могу понять, как в Rational Robot считать значение ячейки моего DataGrid-a.

Эту задачку я уже решала в TestComplete и Borland SilkTest, но в RR отличается форма записи строки.

Тестируемая программка с Windows Forms.

Заранее спасибо за ответ
  • 0

#2 Pryanik

Pryanik

    Постоянный участник

  • Members
  • PipPipPip
  • 214 сообщений
  • Город:МОСКВА

Отправлено 08 мая 2009 - 06:01

Здравствуйте,

Сейчас пытаюсь опробовать в "полевых условиях" различные программы для автоматического тестирования, и пришла очередь Rational Robot (самая последняя доступная версия 7.0.2.01).

Задачка такая - создаем юзера с неким ID (допустим, 123), дальше открываем список всех юзеров (где их довольно много) и открываем того самого юзера с ID 123, которого только что создали. Открыть можно либо даблкликом по координатам на строке с юзером (это не подходит, ибо список скроллится), либо можно выделить первый элемент таблицы и дальше действовать по схеме: проверяем ID юзера в строке, если это не он, то жмем "вниз", если он, то жмем "энтер".

Проблема в том, что я не могу понять, как в Rational Robot считать значение ячейки моего DataGrid-a.

Эту задачку я уже решала в TestComplete и Borland SilkTest, но в RR отличается форма записи строки.

Тестируемая программка с Windows Forms.

Заранее спасибо за ответ

Help
(смотри GenericObjectVP или SQAGetProperty)
  • 0

#3 Fizalis

Fizalis

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

  • Members
  • Pip
  • 15 сообщений

Отправлено 08 мая 2009 - 06:22

По первому запросу не выдает вообще ничего, по второму - Work with OracleForms, в примере скрипта которого использована эта функция. На вопрос это ни в коем случае не отвечает.

Я пробовала использовать кнопку с надписью Data 0101, которая, если я ничего не путаю, используется в примере в туториале, но она выдает сообщение об ошибке (программа не видит данные в датагрид), далее я просмотрела список доступных properties этого DataGrid-a, где, в принципе, нашла несколько элементов, которые мне могли бы подойти - Item, CurrentCell, но либо это все-таки не то, либо я неправильно к ним обращаюсь. Вытащить значение я пытаюсь как раз с помощью SQAGetProperty

На всякий случай - мне не нужно запомнить номер, существующий в датагриде на момент записи скрипта, мне нужно создать нового юзера с новым номером, запомнить его, а потом именно его найти и открыть
  • 0

#4 Fizalis

Fizalis

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

  • Members
  • Pip
  • 15 сообщений

Отправлено 14 мая 2009 - 14:14

Мда, я ожидала чуток большего количества ответов... Кто-нибудь из опытных юзеров RR мог бы показать строку из своего скрипта, читающую значение в ячейке DataGrid? Даже если мне она не подойдет, может быть хоть подтолкнет в нужном направлении?
  • 0

#5 Fizalis

Fizalis

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

  • Members
  • Pip
  • 15 сообщений

Отправлено 18 мая 2009 - 11:29

Снова вернулась к RR, "а воз и ныне там". Предполагаю, что проблема в том, что мой DataGrid в скрипте описан как GenericObject. Товарищи опытные пользователи, подскажите, в этом ли дело и как это решить.
  • 0

#6 berzinc

berzinc

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

  • Members
  • PipPip
  • 110 сообщений
  • ФИО:Berzins Lauris
  • Город:Riga, Latvia

Отправлено 18 мая 2009 - 11:37

Снова вернулась к RR, "а воз и ныне там". Предполагаю, что проблема в том, что мой DataGrid в скрипте описан как GenericObject. Товарищи опытные пользователи, подскажите, в этом ли дело и как это решить.


InputKeys "^A^c"
sData = Clipboard.GetText()
  • 0

#7 Fizalis

Fizalis

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

  • Members
  • Pip
  • 15 сообщений

Отправлено 18 мая 2009 - 12:36

Ctrl+A не работает в моем DataGrid-e (выделение больше чем одной целой строки, и меньше тоже, невозможно)
  • 0

#8 berzinc

berzinc

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

  • Members
  • PipPip
  • 110 сообщений
  • ФИО:Berzins Lauris
  • Город:Riga, Latvia

Отправлено 18 мая 2009 - 13:00

Ctrl+A не работает в моем DataGrid-e (выделение больше чем одной целой строки, и меньше тоже, невозможно)


Ctrl+C работает?
{UP}{DOWN}{LEFT}{RIGHT}...
  • 0

#9 Fizalis

Fizalis

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

  • Members
  • Pip
  • 15 сообщений

Отправлено 18 мая 2009 - 13:16

Да, уже подумала насчет этого.. пока что единственный вариант, который реально может сработать. Плохо то, что это все-таки слегка извращение.

На данный момент планирую сделать так:

Клик по координатам 1,1 на датагриде

while flag=0

ctrl+c
проверить данные в клипборде

if (value=what I need)
Enter
flag=1
else
Down

wend

Спасибо за идею...
  • 0

#10 Fizalis

Fizalis

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

  • Members
  • Pip
  • 15 сообщений

Отправлено 18 мая 2009 - 13:26

Не, не катит :) Выдается одна строка, из которой мне нужно одно значение, которое начинается с неизвестного символа и имеет неизвестную длину :)
  • 0

#11 berzinc

berzinc

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

  • Members
  • PipPip
  • 110 сообщений
  • ФИО:Berzins Lauris
  • Город:Riga, Latvia

Отправлено 18 мая 2009 - 13:34

Не, не катит :) Выдается одна строка, из которой мне нужно одно значение, которое начинается с неизвестного символа и имеет неизвестную длину :)


?
instr
  • 0

#12 Fizalis

Fizalis

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

  • Members
  • Pip
  • 15 сообщений

Отправлено 18 мая 2009 - 13:45

Необходимое мне значение находится во второй колонке. Всего колонок 3. Выделить можно только построчно, таким образом Ctrl+C дает мне строку с 3мя значениями, которые все разной длины..

Было принять решение не рассматривать дальше эту тулзу, поскольку использование датагрида критично для работы. Если будут идеи, как обратиться к нему напрямую, то я буду благодарна ответу. Если же решение возможно только обходным путем, то смысла в этом нет.

Спасибо за помощь :)
  • 0

#13 berzinc

berzinc

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

  • Members
  • PipPip
  • 110 сообщений
  • ФИО:Berzins Lauris
  • Город:Riga, Latvia

Отправлено 18 мая 2009 - 13:53

Необходимое мне значение находится во второй колонке. Всего колонок 3. Выделить можно только построчно, таким образом Ctrl+C дает мне строку с 3мя значениями, которые все разной длины..

...
if instr(sDataFormClipboard,sValueWhatINeed)>0
Enter
flag=1
else
...
  • 0

#14 Pryanik

Pryanik

    Постоянный участник

  • Members
  • PipPipPip
  • 214 сообщений
  • Город:МОСКВА

Отправлено 19 мая 2009 - 05:59

Необходимое мне значение находится во второй колонке. Всего колонок 3. Выделить можно только построчно, таким образом Ctrl+C дает мне строку с 3мя значениями, которые все разной длины..

...
if instr(sDataFormClipboard,sValueWhatINeed)>0
Enter
flag=1
else
...

Но если sValueWhatINeed в колонке 1 или 3, то отработает некорректно. :crazy:
  • 0


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

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