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

Фотография

Получение полного пути к объекту


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

#1 QA*

QA*

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

  • Members
  • PipPip
  • 104 сообщений
  • Город:Москва

Отправлено 06 апреля 2015 - 08:16

Коллеги, доброго времени суток.

 

Не подскажете, можно ли в QTP|UFT как-то получить полный путь к объекту в виде строки?

 

 

Например, для объекта Window("MyWin").EditBox("MyEditBox") это будет строка "Window("MyWin").EditBox("MyEditBox")".

В TestComplete это делается очень просто: вызовом метода Name или FullName (уже точно не помню, каким именно, почти два года не пользовался TC) самого объекта. В объектах QTP я ничего подобного не нашел. 

 

Буду благодарен любым советам.


  • 0

#2 Alex

Alex

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

  • Members
  • PipPipPip
  • 237 сообщений
  • ФИО:Алексей

Отправлено 07 апреля 2015 - 06:02

Коллеги, доброго времени суток.

 

Не подскажете, можно ли в QTP|UFT как-то получить полный путь к объекту в виде строки?

 

 

Например, для объекта Window("MyWin").EditBox("MyEditBox") это будет строка "Window("MyWin").EditBox("MyEditBox")".

В TestComplete это делается очень просто: вызовом метода Name или FullName (уже точно не помню, каким именно, почти два года не пользовался TC) самого объекта. В объектах QTP я ничего подобного не нашел. 

 

Буду благодарен любым советам.

Решения из коробки нет...

То ли на этом форуме, то ли advancedqtp как-то выкладывал функцию для решения этой задачи... так, с QTP давно не работал, точно не вспомню, на чем именно было основано решение. Если память не изменяет, то на использовании свойств Name, micClass, Parent. За счет рекурсивного обхода родителей можно построить эту строку.


  • 1

#3 ch_ip

ch_ip

    Профессионал

  • Members
  • PipPipPipPipPipPip
  • 1 097 сообщений
  • ФИО:Павел Абдюшев
  • Город:Москва


Отправлено 07 апреля 2015 - 10:45

Не подскажете, можно ли в QTP|UFT как-то получить полный путь к объекту в виде строки?
Например, для объекта Window("MyWin").EditBox("MyEditBox") это будет строка "Window("MyWin").EditBox("MyEditBox")".

В TestComplete это делается очень просто: вызовом метода Name или FullName (уже точно не помню, каким именно, почти два года не пользовался TC) самого объекта. В объектах QTP я ничего подобного не нашел.

А зачем вам такая строка?


  • 0

#4 QA*

QA*

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

  • Members
  • PipPip
  • 104 сообщений
  • Город:Москва

Отправлено 07 апреля 2015 - 12:05

Коллеги, спасибо что откликнулись. 

Подробнее о том, зачем мне нужно получить эту строку. Идея следующая. Разрабатываю класс для верификации форм. Это будет выглядеть примерно так:

With Window("MyForm")
 addObject .EditBox("MyEditBox1")
 addObject .EditBox("MyEditBox1")
 runVeirficate Window("MyForm")
End With

addObject - добавляет в список верифицируемые объекты. FullName - это то что будеть добавляться в этот список.

runVeirficate - выполняет верификацию каждого элемента данного списка, сообщает о результате верификации. Имея FullName объекта, с помощью Evaluete можно делать с ним все что угодно.


  • 0

#5 QA*

QA*

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

  • Members
  • PipPip
  • 104 сообщений
  • Город:Москва

Отправлено 28 мая 2015 - 16:59

Отпала задача получения полного пути к объекту. Я сами объекты .EditBox("MyEditBox1").EditBox("MyEditBox1"), добавляю в список Scripting.Dictonary. Дальше, без всяких Eval работаю с объектами из этого списка.


  • 0


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

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