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

Публикации VegaX

70 публикаций создано VegaX (учитываются публикации только с 29 апреля 2023)



#30763 Функция GetMultiText

Отправлено автор: VegaX 17 июля 2006 - 11:37 в MicroFocus (Borland, Segue) - Functional testing

Не проверял все возможности с Clipboard. Но в моем варианте вроде вернуло нормально все строчки. Надежность время покажет :clapping:



#31962 Функция GetMultiText

Отправлено автор: VegaX 21 августа 2006 - 17:44 в MicroFocus (Borland, Segue) - Functional testing

Появется немного времени, попробую провести у себя тест :good:
Спасибо за екземпляр - уверен, что пригодится... мож еще и вопросы возникнут :clapping:



#33285 Функция GetMultiText

Отправлено автор: VegaX 15 сентября 2006 - 16:13 в MicroFocus (Borland, Segue) - Functional testing

Вот пример кода:
[-] LIST OF STRING twoval = <text>
  [ ] function set2param(sPar1, sPar2) {
  [ ] alert(sPar1);
  [ ] alert(sPar2);
  [ ] if ((sPar1 == 0)&&(sPar2 == 0)){
  [ ] return false;
  [ ] }
  [ ] else {
  [ ] return true;
  [ ] }
  [ ] }
	[ ] 
	[ ] BrowserPage.ExecScript(twoval)
	[ ] Print (BrowserPage.ExecFunction ("set2param", {"par1", "par2"}))

Функция не устанавливает 2 параметра. Возвращает два нуля.
Немного покрутив, я сделал следующий вариант:

[+] LIST OF STRING twoval = <text>
  [ ] var sPar1;
  [ ] var sPar2;
  [ ] function set2param() {
  [ ] alert(sPar1);
  [ ] alert(sPar2);
  [ ] if ((sPar1 == 0)&&(sPar2 == 0)){
  [ ] return false;
  [ ] }
  [ ] else {
  [ ] return true;
  [ ] }
  [ ] }
	[ ] 
	[ ] BrowserPage.ExecScript(twoval)
	[ ] BrowserPage.ExecScript({'sPar1="txtUser"; sPar2="User";'})
	[ ] Print (BrowserPage.ExecFunction ("set2param", {}))
Не совсем параметры, а глобальные переменные... но вроде работает.



#32778 Функция GetMultiText

Отправлено автор: VegaX 07 сентября 2006 - 14:02 в MicroFocus (Borland, Segue) - Functional testing

Попробовал немного пописать скрипты на джаве. Работаю прекрасно - быстрее чем на Силке :shok:
Но появилась проблема с ExecFunction передача 2 параметров не получается.
Можно запустить функцию через ExecLine, но ExecLine не возвращает значение для проверки результата.
Документации по этому поводу в силк хелпе 0. Можешь подскажешь формат передачи нескольких параметров?

Заранее благодарен.



#33151 Функция GetMultiText

Отправлено автор: VegaX 13 сентября 2006 - 17:34 в MicroFocus (Borland, Segue) - Functional testing

Спасибо за ответ.

Я так тоже думал... но почемуто оно так не работает.
В этом случае первый и второй параметр стают нулями :clapping:
 [ ] function setValById(sId, sVal) {
  [ ] alert(sId);
  [ ] alert(sVal);
  [ ]}

Силк вызов:
ОКНО.ExecFunction ("setValById", {"Id","Val"}))

Может это глюк версии 6.5? Ты пробовал так передавать, у тебя получилось?

И еще один глюк (менее критичный), у меня не получается при помощи ExecScript загнать сразу две функции... по отдельности загоняются нормально, а сразу две - генерит ошибку.

Есть какие-то идеи?



#31925 Функция GetMultiText

Отправлено автор: VegaX 21 августа 2006 - 10:07 в MicroFocus (Borland, Segue) - Functional testing

vass, а можно более подробенее, а еще лучше пример кода как использовать

внедрение javascript кода средствами SilkTest-a

Заранее благодарен.



#30760 Функция GetMultiText

Отправлено автор: VegaX 17 июля 2006 - 10:40 в MicroFocus (Borland, Segue) - Functional testing

Спасибо за ответ.
Я попробывал lsValue. Оно возвращает точно такой же результат.
Я немного поэксперементировал с HtmlTextField.GetMultiText(). Похоже она работает нормльно до тех пор, пока в HtmlTextField не появляется пустая строчка. После этого HtmlTextField выдает неправильное значение.
Как решение можно использовать копирование всего текста в буфер обмена. Кучеряво, но работает :clapping:



#30724 Функция GetMultiText

Отправлено автор: VegaX 14 июля 2006 - 12:47 в MicroFocus (Borland, Segue) - Functional testing

Привет всем!

Мне нужно взять значение HtmlTextField и я использую функцию GetMultiText. Но она только возвращает пустые строчки в количестве, которые существуют в реальном HtmlTextField, но в последнем не все строчки пустые. Помогите мне в этом разобратся. Спасибо заранее.



#28618 Слэш в названии линка (SilkTest)

Отправлено автор: VegaX 15 мая 2006 - 16:52 в MicroFocus (Borland, Segue) - Functional testing

Вот еще одна из интересных тем, которая может быть высвлетлена в книге :help:



#28550 Слэш в названии линка (SilkTest)

Отправлено автор: VegaX 12 мая 2006 - 12:45 в MicroFocus (Borland, Segue) - Functional testing

Прийдется написать маленький скриптец с использованием функции GetLocation для HtmlLink.

Как пример:
[ ] WINDOW wLink = NULL
	[ ] INTEGER iIndex = 1
	[+] while BrowserPage.HtmlLink("my?link[{iIndex}]").Exists()
  [+] if MatchStr("*my/link*", BrowserPage.HtmlLink("my?link[{iIndex}]").GetLocation())
 	 [ ] wLink = BrowserPage.HtmlLink("my?link[{iIndex}]")
 	 [ ] break
  [ ] iIndex++
	[ ] Print(wLink)

Там конечно нужно это все поменять под твой код. Это просто сама идея...



#28592 Слэш в названии линка (SilkTest)

Отправлено автор: VegaX 15 мая 2006 - 10:15 в MicroFocus (Borland, Segue) - Functional testing

В СилкТесте для строк таким маскирующим символом является двойная кавычка ".


Есть такой символ. Только я не совсем понимаю как он может тут помочь. Можешь подкинешь пример кода (или тага) как можно его использовать?

Дело в том что конструкция типа:
BrowserPage.HtmlLink("my"/link").Exists()
не подойдет, так как СилкТестом не будет обнаружен конец строкового тега!



#26956 Свойства multitestcase

Отправлено автор: VegaX 06 апреля 2006 - 16:13 в MicroFocus (Borland, Segue) - Functional testing

Использование функции было бы прекрасно. Но насколько я знаю ее нельзя присоединить к тест плану. Относительно main - то она не совсем подходит, т.к. ей нельзя передавать параметры извне (та же проблема и с тест сьютом).

Я конечно понимаю, что multitestcase предназначен для не совсем этих целей. Но по крайней мере она позволяет вызвать несколько обычных testcase. Да и проблема не в этом, а в том что Силк при таком подходе сохраняет в некоректом формате результирующий файл. Есть подозрение, что он просто его не закрывает и не формирует, а оставляет промежуточный результат.

Вот я и интересуюсь, может кто стыкался с такой проблемой. Меня интересует именно файл результата. Может ему еще какие установки надо сделать?

Если это не поможет - то прийдется пойти другим путем... - переделать все тест кейзы что будут использоватся в функции, и сделать дополнительный набор тесткейзов, что будут просто перенаправлять к этим функциям (правда прийдется еще поигратся с appstate). И тогда можно будет не использовать multitestcase. Этот выход не очень нравится, т.к. удвоится количество глобальных названий.



#26951 Свойства multitestcase

Отправлено автор: VegaX 06 апреля 2006 - 14:04 в MicroFocus (Borland, Segue) - Functional testing

Я тут столкнулся с одной проблемкой.

Есть набор тестов, которы должны быть выполнены последовательно. Все данные для них загружаются с внешнего файла для одно прохода и соответсвенно с нескольких для нескольких проходов. Нужно сделать для них первоначальную инициализацию и подключить к тест плану.

Было принято решение использовать multitestcase как функцию которая подключается к плану и может выполнить дополнительную инициализацию, а также имеет возможность работать с параметрами.

А теперь проблема. При запуске multitestcase не установлен агент (это логично) и чтобы запустить его надо инициализировать. Все хорошо инициализуруется и выполняется, правда почемуто уходит файл результатов. Он по непонятной мне причине записуестя в некоректном формате и не может быть в последствии открыт Силк Тест 6.5 (соответственно нельзя просмотреть логи). И как я заметитл после выполнения теста создается открытый файл Тест.jou. как решить эту проблему?
Заранее благодарен.



#26959 Свойства multitestcase

Отправлено автор: VegaX 06 апреля 2006 - 17:15 в MicroFocus (Borland, Segue) - Functional testing

Только что случайно нарыл возможность Силка.

Тест план
[-] Test
  [ ] script: script.t
  [ ] testcase: multitest
  [ ] testdata: "FileName.fn"

Тест кейз

//обьявляем как функцию
[-] VOID multitest(STRING sDataFile)
  [ ] //prepare data for test
  [ ] RECORD r1 = GetRecordForTest1(sDataFile)
  [ ] RECORD r2 = GetRecordForTest2(sDataFile)
  [ ] Testcase1(r1)
  [ ] Testcase1(r2)


Весело, но работает! :smile:
Причем т.к. multitest не является мулти тест кейзом - то локальный хост подключен. т.е. не надо производить Connect("(local)")! :dirol:

Завтра буду проверять стабильность. Правда с дебагом с тест плана немного сложно будет - функция multitest среди списка тест кейзов на запуск не числится.



#26958 Свойства multitestcase

Отправлено автор: VegaX 06 апреля 2006 - 17:06 в MicroFocus (Borland, Segue) - Functional testing

Каркас у меня постоянно меняется :)
Предлагаю общую конструкцию.

Тест план
[-] Test
	[ ] script: script.t
	[ ] testcase: multitest
	[ ] testdata: "FileName.fn"

Тест кейз
[-] multitestcase multitest(STRING sDataFile)
	[ ] //Init default machine
	[ ] Connect("(local)")
	[ ] //prepare data for test
	[ ] RECORD r1 = GetRecordForTest1(sDataFile)
	[ ] RECORD r2 = GetRecordForTest2(sDataFile)
	[ ] Testcase1(r1)
	[ ] Testcase1(r2)



#26997 Свойства multitestcase

Отправлено автор: VegaX 07 апреля 2006 - 10:10 в MicroFocus (Borland, Segue) - Functional testing

KaNoN спасибо за дельные советы :dirol:



#26138 Распознование окон

Отправлено автор: VegaX 15 марта 2006 - 11:24 в MicroFocus (Borland, Segue) - Functional testing

Мне дали возможность протестировать мой скрипт на машине с Силк Тестом 7.1.
И тут же проблема была решена! :crazy:

Как оказалось - все намного проще.
В свое время для повышения производительности и уменьшения количество элементов в декларации (при записи), я отключил распознование "избыточных" елементов. В том числе и конторолов, которые есть невидимые. Не понятно по каким причинам, но Силк Тест 7.1 считает эти колоники невидимыми, соответсвено не может с ними работать. Я включил в расширение, чтобы агент работал так же с невидимыми колонками и эта проблема была решена.

Также нашел еще одну разницу при использовании 6.5 и 7.1 версий. Так код:

    Control(WindowTag).Click()

На двух версиях работает по разному. При передачи WindowTag ссылки при версии 6.5 происходит щелчок по координатам (0.0). Т.е. используется функция Control().Click(). Навигация по ссылке не происходит.
В версии 7.1 происходит клик на середине ссылки, т.е. вызывается функция HtmlLink().Click(), что вызывает переход по ссылке. Пришлось опять скрипт подкоректировать :wink:



#26073 Распознование окон

Отправлено автор: VegaX 13 марта 2006 - 17:28 в MicroFocus (Borland, Segue) - Functional testing

Привет всем,

Кто-нибудь сталкивался с проблемой разности распознования окон в Бровзере при разных версиях Силк-Теста.

У меня возникла такая проблема. У клиента 7 версия, у меня 6.5. Настройки все одинаковые, но у клиента не находит ряд обьектов!!!
Причем, что мне важно, находит таблицу, но без единой колонки!!!

С моей стороны все работает нормально....
У кого-какие идеи, помогите, плиз :aggressive: :help: :blush:



#26204 Распознование окон

Отправлено автор: VegaX 16 марта 2006 - 14:48 в MicroFocus (Borland, Segue) - Functional testing

Век живи - век учись. :crazy:
KaNoN спасибо за толковые советы.



#26085 Распознование окон

Отправлено автор: VegaX 13 марта 2006 - 18:59 в MicroFocus (Borland, Segue) - Functional testing

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



#26083 Распознование окон

Отправлено автор: VegaX 13 марта 2006 - 18:45 в MicroFocus (Borland, Segue) - Functional testing

А элементы внутри таблицы в этом случае будут видны по другому пути, отличному от других уровней таблиц. Некоторые элементы (такие как колонки) вообще пропадут бесследно (логично, если нет таблицы, то и нет колонки этой таблицы). Останутся максимум тексты и элементы управления, которые были помещены в таблицу.


В том то и дело, что элементы управления - линки и тексты, что были в таблице, перестали существовать ни по этому ни по другому пути... Жаль, что я не имею прямой доступ к клиентской машине - так бы такие вопросы быстрее бы решались.



#26081 Распознование окон

Отправлено автор: VegaX 13 марта 2006 - 18:27 в MicroFocus (Borland, Segue) - Functional testing

Да у меня аппликация только из одних таблиц и состоит....
На уровне 0.5 они распознавались некорректно, много вообще не распознавалось, что затрудняло написание скриптов. Покопавшись по докам, я обнаружил, что оптимальный метод - использовать 0.76 уровень распознавания - его и использую.

Но, вернувшись к проблеме, если Силк не распознал таблицу - ведь он должен распознать обьекты что в ней находятся. Насколько я помню, когда я ставил уровень таблицы 0 - все обьекты были, правда они не были посортированы по таблицам. В моем случае, обьекты что находятся в таблице - вообще перестали существовать в декларации!!! Или это нормально, при таком распознавании таблицы? Заранее благодарен.



#26079 Распознование окон

Отправлено автор: VegaX 13 марта 2006 - 18:05 в MicroFocus (Borland, Segue) - Functional testing

Еще раз спасибо за ответ! :blush:
Все-таки интересно, как Силк "мудро" работает с таблицами. :aggressive:

А вообще буду пробовать.



#26076 Распознование окон

Отправлено автор: VegaX 13 марта 2006 - 17:50 в MicroFocus (Borland, Segue) - Functional testing

KaNoN спасибо за быстрый ответ.

А мог бы ты еще подсказать что значит 0 бордер. Я всегда думал, что нулевой бордер - это таблицы, которые не имеют тагов таблицы и являются отформатированым текстом, который Силк распознает как таблицу.



#30723 Распознование контрола

Отправлено автор: VegaX 14 июля 2006 - 12:42 в MicroFocus (Borland, Segue) - Functional testing

Столкнулся с такой проблемкой.
В колонке таблицы есть текстовый элемент, но вызов функции HtmlColumn.HtmlText("#1").Exists()
возвращает FALSE. В тоже время вызов
HtmlColumn.HtmlText("Caption").Exists()
возвращает TRUE. С чем это может быть связано?
Подскажите пожайлуйста.