Идентификаторы полей в компонентах SAP Netweaver webdynpro

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

3 ответа

Вы можете быть заинтересованы в использовании меток компонентов вместо идентификаторов.

Потому что, как упоминалось ранее, вы не можете полагаться на идентификаторы: они генерируются.

Вот CSS-подобный селектор, который можно использовать для доступа к элементу (в Ruby, используя Watir):

def find_element_id_by_label_name(name)
  label_regexp = Regexp.new(name + "\s?\:?")
  l = @browser.label(:text, label_regexp)
  id = l.attribute_value('f')
  id
end

def find_textfield_by_name(name)
  @browser.text_field(:id, find_element_id_by_label_name(name))
end

С Firebug вы можете видеть текущее состояние DOM HTML-страницы. Это означает, что вы также можете видеть материал, который был добавлен через AJAX после загрузки страницы (в случае с Web Dynpro почти все).

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

С наилучшими пожеланиями, Тобиас

Немного не по теме, но может быть полезно: на sdn есть набор статей о тестировании пользовательского интерфейса webdynpro

С уважением
Гийом

Другие вопросы по тегам