Test Complete 3.0 Enterprise
#1 Гость_Сергей Фролов_*
Отправлено 06 ноября 2003 - 06:56
#2
Отправлено 06 ноября 2003 - 08:38
На координаты привязываться себе дороже выйдет - завтра разработчик перенесёт контрол на 20 пикселей выше и что? переписывать скрипт?
Редактор портала www.it4business.ru
#3
Отправлено 07 ноября 2003 - 08:03
Но ведь ТК не поддерживает объекты типа "Грид".
Это нужно будет шаманством заниматься и отталкиваться не от объекта, а от того, что нарисовано в форме.
Поясните пожалуйста, как вы работаете от объектной модели грида?
Или вы имеете ввиду просто абстрактный контрол, который в данном случае называет "Грид"?
#4
Отправлено 10 ноября 2003 - 09:23
Передать фокус ему можно? Можно.
Стрелки тама всякие он принимает, позиционироваться на определённый роу и колумн тоже можно. Грид беслпатный, пропатченый нашими девелоперами, под наши нужды. .NET
Редактор портала www.it4business.ru
#5
Отправлено 11 ноября 2003 - 10:59
(В Object Maping посмотрите).
Таким образом функции самого грида недоступны.
Да, действительно, фокус можно передать.
Стрелки он принимает - но это уже не функциональность грида, это просто обычные движения пользователя.
А что значит можно позиционироваться на определённый роу и колумн?
К примеру нажать 5 раз влево и 2 раза вниз?
Я имею ввиду, чтобы можно было сделать что-нибудь вроде такого(грубо говоря):
...Window('Grid').Row=7
...Window('Grid').Column=5
...Window('Grid').GetCurrentValue
Если у вас такое поддерживает, то это действительно здорово.
Поделитесь, плиз, как такое у вас получается?
Или, я просто не совсем вас понял
#6 Гость_Guest_*
Отправлено 11 ноября 2003 - 11:26
Да, в TestComplete такого объекта нет и, насколько мне известно, и другие средства автоматизированного тестирования с grid-ами в "закрытых" приложениях (т.е. без отладочной информации) не работают/работают плохо.
Если-же у вас есть доступ к исходному коду приложения, то настоятельно рекомендую посетить новостную группу automatedqa.public.testcomplete на сервере forums.automatedqa.com и поискать там сообщения с текстом "grid" и содержащие вложения - там помещалось несколько примеров как получать доступ к даннам grid-а.
Основных подходов два:
1. Создание своего COM-компонента в рамках приложения, который будет отдавать что и как надо в TestComplete.
2. Т.к. grid получает данные не непосредственно, а через DataSource, то работать надо именно с DataSource и получать данные через его свойства.
--
Regards,
Alex
[TeamAQA]
================================
#7
Отправлено 11 ноября 2003 - 12:41
Ну ка-а-а-анечно :)Я имею ввиду, чтобы можно было сделать что-нибудь вроде такого(грубо говоря):
...Window('Grid').Row=7
...Window('Grid').Column=5
...Window('Grid').GetCurrentValue
А что-то типа
...App.Run
...App.Test
...If Log.Analize = OK then goto beer
? :) и жизнь была бы сказка :)
Да, такого нету , но как врено подметил наш упорно не регистрирующийся гость Alex -- с гридами у многих траблы, ТК тут не исключение.
Позиционироваться я пока пробовал именно тыками на сколько нужно (у меня слава богу всё что вытакливается на интерфейс побито на пейджи и 40 раз вниз жать не нужно) -- потом просто выделяется значение в гриде и компарим с чем нужно - или пускаем далее в оборот.
Редактор портала www.it4business.ru
#8
Отправлено 11 ноября 2003 - 12:42
Редактор портала www.it4business.ru
#9
Отправлено 11 ноября 2003 - 12:59
Я уже давно смотрю за новостями на automatedqa.public.testcomplete.
В том то и дело, что там обсуждался уже этот вопрос.
И как раз там задавался вопрос, как быть с гридом, если не использовать РекордСеты.
Поэтому я удивился, что здесь говорилось об "объектной модели грида".
Думал, что может быть уже новая версия есть где его поддерживают, как полноценный объект.
#10
Отправлено 11 ноября 2003 - 13:06
Редактор портала www.it4business.ru
#11
Отправлено 11 ноября 2003 - 13:15
на сколько я помню, когда я изучал WinRunner, то он работал с гридами на ура (по крайней мере с дельфевыми).Да, в TestComplete такого объекта нет и, насколько мне известно, и другие средства автоматизированного тестирования с grid-ами в "закрытых" приложениях (т.е. без отладочной информации) не работают/работают плохо.
По крайней мере это
WinRunner позволяет делать.Я имею ввиду, чтобы можно было сделать что-нибудь вроде такого(грубо говоря):
...Window('Grid').Row=7
...Window('Grid').Column=5
...Window('Grid').GetCurrentValue
На счет TC ничего пока, к сожалению, сказать не могу :)
#12 Гость_Guest_*
Отправлено 12 ноября 2003 - 11:21
Приветствую :)Может не кместу будет сказано, но
на сколько я помню, когда я изучал WinRunner, то он работал с гридами на ура (по крайней мере с дельфевыми).Да, в TestComplete такого объекта нет и, насколько мне известно, и другие средства автоматизированного тестирования с grid-ами в "закрытых" приложениях (т.е. без отладочной информации) не работают/работают плохо.
По крайней мере этоWinRunner позволяет делать.Я имею ввиду, чтобы можно было сделать что-нибудь вроде такого(грубо говоря):
...Window('Grid').Row=7
...Window('Grid').Column=5
...Window('Grid').GetCurrentValue
На счет TC ничего пока, к сожалению, сказать не могу :)
WinRunner умеет так работать с приложением, которое *собрано без отладочное информации* ?
Я могу ошибаться (не проверял), но, насколько я знаю, если собрать Delphi-приложение с отладочной информацией (и, возможно, использовав Debug Info Agent и отладочную информацию для VCL), то TestComplete позволит напрямую вызывать методы грида, т.е. позиционироваться с указанием строки/столбца. А вот без отладочной информации - пока увы...
--
Regards,
Alex
[TeamAQA]
================================
#13
Отправлено 13 ноября 2003 - 08:45
ActiveX/VB - умеет работать с некоторыми (около двух десятков) проприетарных гридов
PowerBuilder - умеет, и ещё как
Java - умеет
VC++ - не знаю - не пробовал. Наверное с некоторыми умеет.
Oracle Forms, SAP, PeopleSoft - умеет.
Собственно, Delphi - единственная среда, с которой WR работает a la TestComplete. Во всём виноват VCL ;)
Майк.
#14
Отправлено 22 января 2004 - 10:09
Хотя может я и не понял вопроса или ламота в этом деле... тогда прошу не обижаться и забыть, что я написал выше.
Успехов в УБ и ПП.
#15 Гость_Guest_*
Отправлено 22 января 2004 - 11:33
Боюсь, что проблем будет масса, т.к. размер ячейки (и, соответственно, значение константы) может зависеть от размера шрифта, которым выводится текст, возможности выводить многострочный текст в ячейке, случайного ручного изменения высоты ячейки, которое было запомнено и не восстановлено в значение по умолчанию и т.п. Ширина-же ячеек вообще может устанавливаться автоматически...[...] Так какие проблемы в изменении одной константы задающей размер одной ячейки [...]
Т.е. сделать-то, конечно, можно, но не так просто, как мне кажется, или с целым рядом внутренних соглашений/ограничений.
Regards,
Alex
[TeamAQA]
================================
#16
Отправлено 22 января 2004 - 13:01
В случае неравномерности сетки или отсутствия какого либо графического отображения границ клетки, тогда :unsure: ... трудно что-либо посоветовать.
Успехов в УБ и ПП.
#17
Отправлено 23 января 2004 - 15:15
Да - известная проблема.У меня возникла проблема с позиционированием Мыши на экране. В компоненте типа DBGrid необходимо вызвать правой клавишей мыши popup меню, курсор мыши должен стоять на определенной записи в таблице. При одном разрешении экрана нет проблем, но при смене разрешения экрана положение мыши смещается. Вопрос: как совмесить курсор в сетке и указатель мыши?
Гриды просто рисуются а в области редактирования создается Edit Box.
Поэтому наверно единственным нормальным вариантом будет либо внесение в грид дополнительного API (проскролировать грид, что-бы ячейка стала видимой; получить координаты видимой ячейки) либо эмулировать нажатия на стрелочки и получать координаты появившегося Edit Box.
Количество пользователей, читающих эту тему: 0
0 пользователей, 0 гостей, 0 анонимных