А что Вы имеете ввиду под "обрабатывать"? Если надо сделать чекпойнт для изображения - используйте Region чекпойнт, он снимает "чистые" картинки. Если надо в Stores добавить или на диск сохранить или т.п. - можно, наверное, написать script extension, который будет это делать.Никак. Смысл Vizualizer'а (насколько я понимаю, Вы именно эту функциональность ввиду) в том, чтобы показать объекты приложения во время выполнения операций над ними; а чтобы было понятно, над каким объектом производится действие, вокруг него рисуется рамка.Господа, знает ли кто-нибудь как в ТК7 отключить при записи скриншота такой круг, который показывает куда нажимали.
Да, именно эту функциональность. Зачем она нужна ясно, Вы абсолютно правы и как ее совсем отключить тоже понятно.
Но хотелось бы после записи теста иметь чистые скриншоты, чтобы потом их обрабатывать.
Вопросы по ТС7
#21
Отправлено 14 августа 2009 - 08:20
#22
Отправлено 14 августа 2009 - 08:45
Но хотелось бы после записи теста иметь чистые скриншоты, чтобы потом их обрабатывать.
А почему бы во время записи теста не создавать Region Checkpoint'ы не не сохранять полученные изображения в Stores? Они ведь как раз для этого и предназначены, и предоставляют отличный спектр услуг для работы с сохраненными изображениями.
#23
Отправлено 14 августа 2009 - 09:15
З.Ы. В stores забрал нужный мне скриншот, сделанный вручную.
#24
Отправлено 17 августа 2009 - 05:33
Во время записи скрипта можно создавать Region Checkpoint, при этом соответствующий скриншот будет добавляться в Stores. Можно делать это через кнопочку Capture Screen. Почитай в хелпе Adding Images to the Regions Collection.
#25
Отправлено 17 августа 2009 - 06:54
#26
Отправлено 19 августа 2009 - 08:19
Как сделать Region Checkpoint, если надо поместить в него меню, на которое я указываю мышкой. Когда я начинаю тащить мышку к рекордеру, нужное мне меню исчезает. Может есть какой-то hot key для этого?
#27
Отправлено 19 августа 2009 - 08:55
Еще такой вопрос:
Как сделать Region Checkpoint, если надо поместить в него меню, на которое я указываю мышкой. Когда я начинаю тащить мышку к рекордеру, нужное мне меню исчезает. Может есть какой-то hot key для этого?
Shaen, из трех предложенных способов выбора нужного региона тут лучше всего снимать чекпоинт с помошью "Select object with cursor". Выбираете его, переходите на свою форму. Открываете меню, которое нужно, наводите на него мышкой (оно должно обвестись красной рамкой) и нажимаете Ctrl+Shift+A. Готово. И никакие горячие клавиши не нужны, чтобы открывать меню. Если уж что-то не получается, то есть стандартная горячая клавиша для всех Windows-приложений: Alt. В форме нажимаете на нее, и фокус переходит на главное меню, и можно спокойно перемещаться по его элементам с помощью стрелочек.
#28
Отправлено 19 августа 2009 - 08:55
Для выбора меню и всяких popup-контролов есть кнопка Select object with cursor. Нажимаете ее, затем открываете меню, ждете, пока вокруг него рамка появится и жмете Ctrl+Shift+A.Как сделать Region Checkpoint, если надо поместить в него меню, на которое я указываю мышкой. Когда я начинаю тащить мышку к рекордеру, нужное мне меню исчезает. Может есть какой-то hot key для этого?
#29
Отправлено 19 августа 2009 - 09:25
В Delphi я могу сравнить значения полей объекта от TADODataSet таким образом:
CustomersList.FieldValues['Kod;Name'] = VarArrayOf([CustKod, CustName])А TK7 в DelphiScript нету VarArrayOf. Я пробовал писать просто [CustKod, CustName], но при выполнени скрипта он выдает ошибку "Invalid variant operation". Почему-то тот способ прокатывает при использовании метода Locate(), например вот такая команда работает:
CustomersList.Locate('Kod;Name', [CustKod, Cust_Name], 0);Просто не хочется сравнивать или присваивать поля каждое отдельной командой, хочется все сразу.
И еще, в методе Locate в третьем параметре нужно указывать параметры поиска: [loCaseSensitive, loPartialKey]. А как их прописывать в DelphiScript, не знаю. Ставлю просто 0 и работает. Мне эти опции пока не нужны, но все равно интересно.
#30
Отправлено 19 августа 2009 - 10:10
По идее, для создания вариантных массивов есть функция CreateVariantArray.А не подскажете, как можно нормально пользоваться вар-массивами в DelphiScript?
В Delphi я могу сравнить значения полей объекта от TADODataSet таким образом:CustomersList.FieldValues['Kod;Name'] = VarArrayOf([CustKod, CustName])А TK7 в DelphiScript нету VarArrayOf. Я пробовал писать просто [CustKod, CustName], но при выполнени скрипта он выдает ошибку "Invalid variant operation".
Наверное, надо определить соответствующие константы и скомбинировать их с помощью функции MkSet.И еще, в методе Locate в третьем параметре нужно указывать параметры поиска: [loCaseSensitive, loPartialKey]. А как их прописывать в DelphiScript, не знаю. Ставлю просто 0 и работает. Мне эти опции пока не нужны, но все равно интересно.
p.s. А с чего это вдруг абсолютно разные вопросы стали в одной и той же теме задавать?
#31
Отправлено 19 августа 2009 - 10:42
modbear, с CreateVariantArray так же ругается, на последней строке (Invalid variant operation):По идее, для создания вариантных массивов есть функция CreateVariantArray.
var Arr: OleVariant; begin Arr := CreateVariantArray(1, 2); Arr[1] := Kind_Date; Arr[2] := Kind_User; SalesDocsList.FieldValues['Kind_Date;Kind_User'] := Arr; ...
С того, что тема называется "Вопросы по TC7"p.s. А с чего это вдруг абсолютно разные вопросы стали в одной и той же теме задавать?
#32
Отправлено 19 августа 2009 - 14:04
#33
Отправлено 20 августа 2009 - 14:35
#34
Отправлено 20 августа 2009 - 15:21
Какой у Вас тип приложения (.NET/Java/Delphi/...), класс контрола? Пример скрипта бы тоже не помешал. (См. FAQ - Как правильно задавать вопросы.)При воспроизведении теста не хочет находить объекты типа tree и соот-но items втутри этого tree. Записывает только так. Что делать?
#35
Отправлено 21 августа 2009 - 07:40
Не находит, например, объекты записанные при записи так:
shell.SWTObject("Tree", "").ClickItem("|mydemo");
Проблему удалось решить добавив
sleep(10000);
1000 или 2000 не помогали.
Еще иногда вместо даблклика пишет в скрипт однократный клик.
Использую также вирт машину VMWare.
#36
Отправлено 24 августа 2009 - 08:42
Я тестирую сайт в ИЕ, часть окна не помещается, а при попытке нажать на кнопку которую не видно, выдается следующее сообщение: "There was an attempt to perform an action at point (692, 1045) which is invisible or out of the window bounds."
Пишу я на JavaScript.
Пробовала сделать следующим образом:
[codebox]
tmp = Sys.WaitProcess ("IExplore",1).Window ("IEFrame", "*", 1);
tmp = tmp.VScroll;
tmp.Pos = tmp.Min;[/codebox]
Но ругается что у объекта нет скролла. Подскажите плз как мне добраться до нижней части экрана.
#37
Отправлено 24 августа 2009 - 09:16
#38
Отправлено 24 августа 2009 - 10:28
У всех объектов на веб странице, открытой в Internet Explorer, есть метод scrollIntoView, который делает объект видимым, то есть скроллирует страницу на нужную позицию.
btn.scrollIntoView(true);
Дмитрий
#39
Отправлено 24 августа 2009 - 12:02
#40
Отправлено 27 августа 2009 - 13:49
Количество пользователей, читающих эту тему: 0
0 пользователей, 0 гостей, 0 анонимных