【问题标题】:field Id's in SAP Netweaver webdynpro componentsSAP Netweaver webdynpro 组件中的字段 ID
【发布时间】:2009-11-16 12:44:53
【问题描述】:

有没有办法提取 SAP 的 webdynpro 组件的字段 ID? 我需要他们搭建一个稳定的自动测试环境。

【问题讨论】:

    标签: automated-tests sap webdynpro


    【解决方案1】:

    使用 Firebug,您可以查看 html 页面的 DOM 的当前状态。这意味着您还可以在加载页面后看到通过 AJAX 添加的内容(在 Web Dynpro 的情况下几乎所有内容)。

    甚至还有一个可以点击 HTML 元素的功能,例如一个表单域,并跳转到它的源,包括 id。

    最好的问候, 托比亚斯

    【讨论】:

    • 嗨 Tobias,我已经尝试过 firebug,但是对于那些特定的组件,fieldId 不能通过它直接读取。只有一个动态的字母数字字符串,它只是在对 webdynprobackend 的内部调用中收集真实的字段 ID。
    • 您好 tmx_dev,我使用 InputFields 对其进行了测试。它们被转换成 标签,其 id 以以下方式生成: IDNDEHLFMJED.. 你不能使用这些 id 进行测试吗?他们似乎很稳定。我做了一些测试,它们在不同的程序版本或服务器之间没有变化。我使用 Web Dynpro 7.11。可能在早期版本中有所不同。
    【解决方案2】:

    您可能对使用组件标签而不是 ID 感兴趣。

    因为,如前所述,您不能依赖 ID:它们是生成的。

    这是一个类似 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
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2023-04-02
      相关资源
      最近更新 更多