【问题标题】:how to check innerHTML of a span in Appium?如何在 Appium 中检查跨度的 innerHTML?
【发布时间】:2018-03-16 08:26:13
【问题描述】:

我正在尝试检查 Appium 中 span 的 innerHTML。我试过使用 element.getAttribute()。

这是我的示例代码:

.elementsByXPath('//span[contains(@class,"approvallistclass1")]') 
        .then(elements => {
            for (key in elements) {
                elements[key].getAttribute('innerHTML').then(attr => {
                    console.log(attr)
                });
            }

【问题讨论】:

  • elements[key].innerHTML
  • 那行不通。以未定义的形式返回。这些元素是 appium 元素对象,而不是普通的 html 元素。
  • 出于某种原因,我可以做 elementsByXPath(...).first().getAttribute('innerHTML')。问题在于尝试在 .then() 语句中使用元素数组。显然我还没有对 webdriver promise 链有深入的了解。

标签: javascript selenium-webdriver appium


【解决方案1】:

没有用于获取 innerHTML/outerHTML 的内置方法。但是在python中你可以使用XML模块来解析outerHTML。

from xml.etree.ElementTree import tostring, fromstring
outerHTML = tostring(fromstring(generic_driver.page_source).findall('.//*[@scrollable="true"]')[0]).decode()

【讨论】:

    猜你喜欢
    • 2018-01-13
    • 2013-09-06
    • 2015-08-02
    • 2017-02-22
    • 1970-01-01
    • 2020-02-11
    • 2021-10-14
    • 2018-01-07
    • 1970-01-01
    相关资源
    最近更新 更多