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

Публикации Nadezhda

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



#35652 Как получить заголовок текущего окна

Отправлено автор: Nadezhda 17 ноября 2006 - 09:08 в IBM Rational - Functional Testing

Посмотрите в хелпе:

Wildcards in Window Captions
A window caption is located in its title bar. Often, a window caption is used to help identify an object in a recognition method.

When you specify a window caption in a recognition method, you can type the entire caption, or you can use the following wildcards:

Wildcard character Description

Question mark (?) Matches a single character in a caption.

Asterisk (*) Matches any number of caption characters from the asterisk to the next character or, if there are no characters after the asterisk, to the end of the caption.

When using wildcard characters in a caption, enclose the caption within braces.
Wildcards are supported in the Caption recognition method of Window and WindowVP commands. They are also supported when specifying the path of an object for an Object Scripting command. However, wildcards are not supported in the Text recognition method of DataWindow and DataWindowVP commands.




#35592 Как получить заголовок текущего окна

Отправлено автор: Nadezhda 16 ноября 2006 - 09:08 в IBM Rational - Functional Testing

Или можно установить контекст, используя CurrentWindow:
Window SetContext, "CurrentWindow", ""
а затем считать значение Caption.



#35520 Клик на объекте вне поля зрения

Отправлено автор: Nadezhda 14 ноября 2006 - 17:03 в IBM Rational - Functional Testing

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



#34232 Как пробовать делать что-то? :)

Отправлено автор: Nadezhda 05 октября 2006 - 09:44 в IBM Rational - Functional Testing

:smile:



#34222 Как пробовать делать что-то? :)

Отправлено автор: Nadezhda 05 октября 2006 - 08:24 в IBM Rational - Functional Testing

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

Здесь вы объединили оба варианта :smile:

мы же не можем анализировать была ли корректно загружена страница до того, как мы выполнили действие "загрузить страницу".  :ok:

Я и не предлагала анализировать, загрузилась ли страница, до того как мы выполнили действие "загрузить страницу" :ok: Я предлагала проверить, есть ли на странице ссылка, на которую надо кликнуть, чтобы нужная страница загрузилась. И эту проверку как раз можно сделать до того, как собственно выполнять действие "загрузить страницу". В случае запуска браузера с нужной страницей в качестве стартовой этот вариант, естественно, не подходит :blush:

Мы анализируем корректность загрузки страницы

Это анализ после выполнения действия "загрузка страницы"

и возможность входа в пользователя в систему

а это - до выполнения действия "вход пользователя".

Например, для анализа корректности загрузки мы можем проверить название страницы или окна браузера, а для проверки возможности входа пользователя в систему - наличие и доступность полей ввода логина и пароля и кнопки "Войти". Причем не обязательно корректная загрузка страницы будет обозначать возможность выполнения входа пользователя.



#34217 Как пробовать делать что-то? :)

Отправлено автор: Nadezhda 05 октября 2006 - 07:06 в IBM Rational - Functional Testing

В описанных подходах суть действительно одна, а разница в том, что я предложила проверять возможность выполнения действия до выполнения действия. Т.е. получается сначала пункт 2 - анализируем ситуацию, потом 3 - сравниваем ожидаемый и полученный результаты, и потом по одной из веток IF пункт 1 - выполняем действие.

Если функциональность в приложении взаимозависима, т.е. нельзя перейти к следующему шагу без корректного завершения предыдущего или сложно спрогнозировать результат, то выбор опции Continue Execution/Skip Current Script/Abort Playback зависит от степени связности выполняемых процедур/функций.
На мой взгляд, опция Skip Current Script может быть более удобна при соответствующей организации скриптов.

Согласна. Мне следовало написать не "нужно", а "можно" выбрать указанную опцию. Все зависит от конкретной ситуации.



#34192 Как пробовать делать что-то? :)

Отправлено автор: Nadezhda 04 октября 2006 - 11:01 в IBM Rational - Functional Testing

Чтобы скрипт, как вы выразились, не глохнул, нужно выбрать опцию Continue Execution в Tool/GUI Playback Options/Error Recovery.
Насколько мне известно, аналога try-catch в SQABasic нет. Для того, чтобы "попробовать" что-то сделать, можно предположить, что может вам помешать это сделать. Например, вы не уверены, что элемент, по которому вам нужно кликнуть, присутствует. Тогда нужно использовать функцию SQAFindObject, и только если она даст положительный результат, продолжать действовать. Это предупреждающий подход.
Конечно, не всегда можно предсказать, что может помешать выполнить то или иное действие. Тогда нужно использовать подход, который описала Tiana, т.е. после выполнения действия анализировать, выполнилось ли оно в действительности.



#33857 Как делается у вас?

Отправлено автор: Nadezhda 26 сентября 2006 - 15:00 в IBM Rational - Functional Testing

Например, такой шаблон:
[объект] [действие] [характеристика ошибки (в случае плохого результата): [признак успешности теста][ожидаемое значение][полученное значение]]
Тогда записи в логе выглядят примерно так (названия вымышленные):
Item was added
Item wasn't added. Expected window caption = "Adding Item Complete", current window caption = "Error".
Конкретные значения берутся из строковых переменных. Window caption - в данном случае признак успешности теста. Он может быть другой (даже в рамках одного теста)
Это пример, подходящий к нашему проекту. У вас можут быть совершенно другие ключевые моменты (не объект и действие, а еще что-то), однако, я думаю, их можно выделить в структуру лог-сообщения, так чтобы это было наглядно и понятно всем, кто просматривает логи.



#33838 Как делается у вас?

Отправлено автор: Nadezhda 26 сентября 2006 - 12:24 в IBM Rational - Functional Testing

А почему неинформативно? Чтобы было информативно, можно ввести на проекте стандартный шаблон сообщения, и тогда человеку, просматривающему логи, будет понятно, что произошло.



#33837 2 вопроса по Роботу

Отправлено автор: Nadezhda 26 сентября 2006 - 12:22 в IBM Rational - Functional Testing

Настройки прерывания выполнения скрипта - в GUI Playback Options, вкладки Error Recovery и Wait State.
Прервать выполнение скрипта командно можно при помощи Exit Sub



#32848 Возможные значения property в SQAGetProperty

Отправлено автор: Nadezhda 08 сентября 2006 - 08:06 в IBM Rational - Functional Testing

Простите за неточность, но я имела в виду Inspector, который в Rational Robot. Именно эти свойства можно получить роботом.



#32843 Возможные значения property в SQAGetProperty

Отправлено автор: Nadezhda 08 сентября 2006 - 06:40 в IBM Rational - Functional Testing

Что вы понимаете под "стандартными" значениями? Функция SQAGetProperty позволяет получать значения тех свойств, которые вы можете просмотреть с помощью Inspector. Перечень свойств, естественно, различается для различных контролов



#30995 как ткнуть на объект,если он найден, но не видим?

Отправлено автор: Nadezhda 24 июля 2006 - 09:16 в IBM Rational - Functional Testing

Попробуйте сначала находить объект (SQAFindObject) и в случае успеха проверять свойство Visible перед тем, как кликать по объекту



#29769 Помогите плиз написать тестирующую программу!

Отправлено автор: Nadezhda 19 июня 2006 - 07:46 в Выбор инструментов для тестирования ПО

Rational Robot содержит хелп, однако найти в нем что-то можно, если знаешь, что искать. Для ознакомления с инструментом лучше всего подходит режим записи (Record -> Insert At Cursor) и воспроизведения (Debug -> Go). Удачи!



#29400 Копирование подстроки из строки

Отправлено автор: Nadezhda 06 июня 2006 - 08:46 в IBM Rational - Functional Testing

Немного фантазии и все получится :victory:
Dim subStringBefore as String
Dim subStringAfter as String
Dim n1 as Integer
Dim n2 as Integer
Dim str as String
Dim targetString as String
...
str =  "...Имя файла: бла-бла-бла.spl..."
subStringBefore = "...Имя файла: "
subStringAfter = "..."
n1 = InStr (str, subStringBefore)
n2 = InStr (n1, str, subStringAfter)
targetString = Mid (str, n1 + len (subStringBefore), n2 - n1 - len (SubStringBefore))
...



#28731 как получить title окна?

Отправлено автор: Nadezhda 18 мая 2006 - 13:33 в IBM Rational - Functional Testing

Я наверное неправильно поняла вашу проблему... Вы написали "только что вызванное", поэтому я предложила CurrentWindow.
Вы заранее не знаете, какой у окна, которое вам нужно, будет Title?



#28725 как получить title окна?

Отправлено автор: Nadezhda 18 мая 2006 - 13:08 в IBM Rational - Functional Testing

Так пробовали?
Window SetContext, "CurrentWindow", ""



#28494 Копирование подстроки из строки

Отправлено автор: Nadezhda 11 мая 2006 - 10:30 в IBM Rational - Functional Testing

Mid[$]( string$, start% [, length%] )

Mid ("aaaaa: 1.0", 8, 3)



#28188 грабли c Rational Robot скриптом

Отправлено автор: Nadezhda 03 мая 2006 - 09:30 в IBM Rational - Functional Testing

If незакрытый видите?
Я - вижу.

Просмотр сообщения



А здесь видите (пример из хелпа)?

If w = 1 or w = 7 then m2 = "the office is closed." else m2 = "please hold for company operator."

Просмотр сообщения


В приведенном Вами примере If записан одной строкой. В таком случае End If не требуется. Но если If пишется в несколько строк, то обязательно нужно в конце писать End If



#27507 Настройка Робота

Отправлено автор: Nadezhda 18 апреля 2006 - 12:02 в IBM Rational - Functional Testing

Если вы приблизительно знаете, сколько по времени выполняется действие (30 секунд), то можно просто поставить
DelayFor 30000



#27481 Bugs Менеджмент

Отправлено автор: Nadezhda 18 апреля 2006 - 07:25 в Управление тестированием

Если я правильно поняла исходный пост, то проблема состоит в том, что в отделе не применяется какая-либо BTS, а описания бага сдаются в отчетах. В таком случае я не только не представляю, как можно отслеживать дубликаты, но и как вообще ведется жизненный цикл бага: как тестировщики узнают, что баг починен и его нужно проверить, что делают, если при проверке обнаружено, что баг не починен? Единственной рекомендацией в таком случае может быть внедрение BTS.
Однако, если BTS все-таки применяется, то в добавок к предыдущим постам могу рассказать, как мы боремся с дубликатами. Мы ведем чеклист в Excel, где каждая строчка - это тест, каждый лист - это версия. Если в ходе проведения теста обнаружена ошибка, то ее номер в BTS мы записываем в ячейку напротив теста. Когда мы получаем новую версию, мы создаем новый лист в Excel посредством копирования последнего. Таким образом, в ячейке напротив каждого теста накапливаются номера багов. В результате, если в ходе проведения теста обнаружена ошибка, мы просматриваем баги в BTS с номерами, указанными для данного теста, и вероятность добавления дубликата значительно снижается.



#27301 Можно ли передавать в скрипт параметры?

Отправлено автор: Nadezhda 14 апреля 2006 - 07:17 в IBM Rational - Functional Testing

Я обычно в таких случаях пишу одну процедуру на заполнение всех полей, а данные для ввода передаю как параметры. Т.е. можно передать пустые строки для тех полей, заполнять которые не требуется



#27267 И опять: как получить массив значений из Listboxa

Отправлено автор: Nadezhda 13 апреля 2006 - 15:00 в IBM Rational - Functional Testing

У меня получалось в случае длинного имени элемента определять его по HTMLId. Может быть и вам поможет



#27130 Проблема с кликом на иконку в HTML таблице

Отправлено автор: Nadezhda 11 апреля 2006 - 12:48 в IBM Rational - Functional Testing

Можно кликнуть в предыдущей ячейке, нажать TAB и пробел, тогда сработает иконка, которая Вам нужна :crazy:



#26694 Помогите с SetContext

Отправлено автор: Nadezhda 31 марта 2006 - 11:42 в IBM Rational - Functional Testing

Help по ключевому слову CurrentWindow выдает:

CurrentWindow is a recMethod value that specifies the currently active window as the window object to access or to set as the current context window

Т.е. получается, что CurrentWindow - это как раз то окно, которое сейчас активно. Вы проверяете его заголовок и действуете соответственно результату.