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

Фотография

Вопросы по ТС7


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

#21 modbear

modbear

    Специалист

  • Members
  • PipPipPipPipPip
  • 548 сообщений

Отправлено 14 августа 2009 - 08:20

Господа, знает ли кто-нибудь как в ТК7 отключить при записи скриншота такой круг, который показывает куда нажимали.

Никак. Смысл Vizualizer'а (насколько я понимаю, Вы именно эту функциональность ввиду) в том, чтобы показать объекты приложения во время выполнения операций над ними; а чтобы было понятно, над каким объектом производится действие, вокруг него рисуется рамка.


Да, именно эту функциональность. Зачем она нужна ясно, Вы абсолютно правы и как ее совсем отключить тоже понятно.
Но хотелось бы после записи теста иметь чистые скриншоты, чтобы потом их обрабатывать.

А что Вы имеете ввиду под "обрабатывать"? Если надо сделать чекпойнт для изображения - используйте Region чекпойнт, он снимает "чистые" картинки. Если надо в Stores добавить или на диск сохранить или т.п. - можно, наверное, написать script extension, который будет это делать.
  • 0

#22 Kapitoshka

Kapitoshka

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

  • Members
  • Pip
  • 17 сообщений
  • ФИО:Миниахметов Эдуард Рафисович

Отправлено 14 августа 2009 - 08:45

Но хотелось бы после записи теста иметь чистые скриншоты, чтобы потом их обрабатывать.


А почему бы во время записи теста не создавать Region Checkpoint'ы не не сохранять полученные изображения в Stores? Они ведь как раз для этого и предназначены, и предоставляют отличный спектр услуг для работы с сохраненными изображениями.
  • 0

#23 shaen

shaen

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

  • Members
  • Pip
  • 16 сообщений
  • ФИО:Den

Отправлено 14 августа 2009 - 09:15

Kapitoshka, именно это надо! Можно как-то это настроить или надо вручную давить "create Region Checkpoint"?
З.Ы. В stores забрал нужный мне скриншот, сделанный вручную.
  • 0

#24 Kapitoshka

Kapitoshka

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

  • Members
  • Pip
  • 17 сообщений
  • ФИО:Миниахметов Эдуард Рафисович

Отправлено 17 августа 2009 - 05:33

shaen, добавить новую картинку можно множеством способов. Чтобы нужные скриншоты создавались автоматичекси командами тестового скрипта, можно воспользоваться функцией AddPicture коллекции Regions. Там же находится функция Compare для сравнивания изображений.
Во время записи скрипта можно создавать Region Checkpoint, при этом соответствующий скриншот будет добавляться в Stores. Можно делать это через кнопочку Capture Screen. Почитай в хелпе Adding Images to the Regions Collection.
  • 0

#25 shaen

shaen

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

  • Members
  • Pip
  • 16 сообщений
  • ФИО:Den

Отправлено 17 августа 2009 - 06:54

Kapitoshka , большое спасибо, вроде разобрался. Удачи всем юзерам ТК7! :)
  • 0

#26 shaen

shaen

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

  • Members
  • Pip
  • 16 сообщений
  • ФИО:Den

Отправлено 19 августа 2009 - 08:19

Еще такой вопрос:

Как сделать Region Checkpoint, если надо поместить в него меню, на которое я указываю мышкой. Когда я начинаю тащить мышку к рекордеру, нужное мне меню исчезает. Может есть какой-то hot key для этого?
  • 0

#27 Kapitoshka

Kapitoshka

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

  • Members
  • Pip
  • 17 сообщений
  • ФИО:Миниахметов Эдуард Рафисович

Отправлено 19 августа 2009 - 08:55

Еще такой вопрос:

Как сделать Region Checkpoint, если надо поместить в него меню, на которое я указываю мышкой. Когда я начинаю тащить мышку к рекордеру, нужное мне меню исчезает. Может есть какой-то hot key для этого?


Shaen, из трех предложенных способов выбора нужного региона тут лучше всего снимать чекпоинт с помошью "Select object with cursor". Выбираете его, переходите на свою форму. Открываете меню, которое нужно, наводите на него мышкой (оно должно обвестись красной рамкой) и нажимаете Ctrl+Shift+A. Готово. И никакие горячие клавиши не нужны, чтобы открывать меню. Если уж что-то не получается, то есть стандартная горячая клавиша для всех Windows-приложений: Alt. В форме нажимаете на нее, и фокус переходит на главное меню, и можно спокойно перемещаться по его элементам с помощью стрелочек.
  • 0

#28 modbear

modbear

    Специалист

  • Members
  • PipPipPipPipPip
  • 548 сообщений

Отправлено 19 августа 2009 - 08:55

Как сделать Region Checkpoint, если надо поместить в него меню, на которое я указываю мышкой. Когда я начинаю тащить мышку к рекордеру, нужное мне меню исчезает. Может есть какой-то hot key для этого?

Для выбора меню и всяких popup-контролов есть кнопка Select object with cursor. Нажимаете ее, затем открываете меню, ждете, пока вокруг него рамка появится и жмете Ctrl+Shift+A.
  • 0

#29 Kapitoshka

Kapitoshka

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

  • Members
  • Pip
  • 17 сообщений
  • ФИО:Миниахметов Эдуард Рафисович

Отправлено 19 августа 2009 - 09:25

А не подскажете, как можно нормально пользоваться вар-массивами в DelphiScript?
В 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 и работает. Мне эти опции пока не нужны, но все равно интересно.
  • 0

#30 modbear

modbear

    Специалист

  • Members
  • PipPipPipPipPip
  • 548 сообщений

Отправлено 19 августа 2009 - 10:10

Сразу оговорюсь, что я в DelphiScript не очень разбираюсь :-), но пара идей тем не менее есть.

А не подскажете, как можно нормально пользоваться вар-массивами в DelphiScript?
В Delphi я могу сравнить значения полей объекта от TADODataSet таким образом:

CustomersList.FieldValues['Kod;Name'] = VarArrayOf([CustKod, CustName])
А TK7 в DelphiScript нету VarArrayOf. Я пробовал писать просто [CustKod, CustName], но при выполнени скрипта он выдает ошибку "Invalid variant operation".

По идее, для создания вариантных массивов есть функция CreateVariantArray.

И еще, в методе Locate в третьем параметре нужно указывать параметры поиска: [loCaseSensitive, loPartialKey]. А как их прописывать в DelphiScript, не знаю. Ставлю просто 0 и работает. Мне эти опции пока не нужны, но все равно интересно.

Наверное, надо определить соответствующие константы и скомбинировать их с помощью функции MkSet.

p.s. А с чего это вдруг абсолютно разные вопросы стали в одной и той же теме задавать?
  • 0

#31 Kapitoshka

Kapitoshka

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

  • Members
  • Pip
  • 17 сообщений
  • ФИО:Миниахметов Эдуард Рафисович

Отправлено 19 августа 2009 - 10:42

По идее, для создания вариантных массивов есть функция CreateVariantArray.

modbear, с CreateVariantArray так же ругается, на последней строке (Invalid variant operation):
var
  Arr: OleVariant;
begin
  Arr := CreateVariantArray(1, 2);
  Arr[1] := Kind_Date;
  Arr[2] := Kind_User;  
  SalesDocsList.FieldValues['Kind_Date;Kind_User'] := Arr;
...

p.s. А с чего это вдруг абсолютно разные вопросы стали в одной и той же теме задавать?

С того, что тема называется "Вопросы по TC7" :acute:
  • 0

#32 shaen

shaen

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

  • Members
  • Pip
  • 16 сообщений
  • ФИО:Den

Отправлено 19 августа 2009 - 14:04

Kapitoshka, большое спасибо и на этот раз! Удалось зафотать! :)
  • 0

#33 shaen

shaen

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

  • Members
  • Pip
  • 16 сообщений
  • ФИО:Den

Отправлено 20 августа 2009 - 14:35

При воспроизведении теста не хочет находить объекты типа tree и соот-но items втутри этого tree. Записывает только так. Что делать?
  • 0

#34 modbear

modbear

    Специалист

  • Members
  • PipPipPipPipPip
  • 548 сообщений

Отправлено 20 августа 2009 - 15:21

При воспроизведении теста не хочет находить объекты типа tree и соот-но items втутри этого tree. Записывает только так. Что делать?

Какой у Вас тип приложения (.NET/Java/Delphi/...), класс контрола? Пример скрипта бы тоже не помешал. (См. FAQ - Как правильно задавать вопросы.)
  • 0

#35 shaen

shaen

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

  • Members
  • Pip
  • 16 сообщений
  • ФИО:Den

Отправлено 21 августа 2009 - 07:40

Тестируемое проиложение написано на Java. Я записываю скрипт на JavaScript.
Не находит, например, объекты записанные при записи так:

shell.SWTObject("Tree", "").ClickItem("|mydemo");

Проблему удалось решить добавив
sleep(10000);
1000 или 2000 не помогали.

Еще иногда вместо даблклика пишет в скрипт однократный клик.

Использую также вирт машину VMWare.
  • 0

#36 Teslenochka

Teslenochka

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

  • Members
  • Pip
  • 5 сообщений
  • ФИО:Елена Тесленко

Отправлено 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]

Но ругается что у объекта нет скролла. Подскажите плз как мне добраться до нижней части экрана.
  • 0

#37 Kapitoshka

Kapitoshka

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

  • Members
  • Pip
  • 17 сообщений
  • ФИО:Миниахметов Эдуард Рафисович

Отправлено 24 августа 2009 - 09:16

Teslenochka, можно имитировать прокрутку в конец страницы нажатием клавиши [End].
  • 0

#38 Dmitry N

Dmitry N

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

  • Members
  • PipPipPipPipPipPip
  • 1 742 сообщений
  • ФИО:Николаев Дмитрий
  • Город:Где-то в России

Отправлено 24 августа 2009 - 10:28

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

У всех объектов на веб странице, открытой в Internet Explorer, есть метод scrollIntoView, который делает объект видимым, то есть скроллирует страницу на нужную позицию.
btn.scrollIntoView(true);

  • 0
С уважением,
Дмитрий

#39 Teslenochka

Teslenochka

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

  • Members
  • Pip
  • 5 сообщений
  • ФИО:Елена Тесленко

Отправлено 24 августа 2009 - 12:02

Большое всем спасибо! :blush:
  • 0

#40 shaen

shaen

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

  • Members
  • Pip
  • 16 сообщений
  • ФИО:Den

Отправлено 27 августа 2009 - 13:49

Все равно не хочет видеть tree (см. выше), помогите плс!
  • 0


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

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