【解决方案】如何在没有手机测试环境的情况下,验证xpath表达式的是否准确——by.御花园自动化小组
评论
收藏

【解决方案】如何在没有手机测试环境的情况下,验证xpath表达式的是否准确——by.御花园自动化小组

经验分享
小曼
2024-03-11 16:05·浏览量:644
小曼
发布于 2024-03-11 16:03更新于 2024-03-11 16:05644浏览

问题:

有个客户反馈,他写的xpath表达式没有返回期望的结果,想要我们帮忙看下。通常情况下,我们需要远程客户的电脑,获取并分析手机ui树信息,然后再用指令验证xpath表达式是否正确。

那么,如果不远程客户电脑,客户发来xml文件,我们能否根据已有的xml文件来验证xpath表达式呢?

解决方法:

那就需要用python来解决了。

from lxml import etree
from html import unescape
import xml.etree.ElementTree as ET

def extract_xml_info(filepath,xpath_expression):
    parser = etree.HTMLParser(encoding="utf-8")
    e=etree.parse(filepath,parser)
    elementsList=e.xpath(xpath_expression)
    print(elementsList)
    #打印相似元素个数
    print(len(elementsList))
    # 提取并打印元素内容
    for element in elementsList:
        outer_html = etree.tostring(element, encoding='utf-8').decode('utf-8')
        decoded_str = unescape(outer_html)
        #打印元素源码
        print(decoded_str)
        # 解析XML字符串
        root = ET.fromstring(decoded_str)
        # 获取元素属性值
        element_attribute_value = root.attrib['text']
        print(element_attribute_value)  # 输出: 销量优先
  
# 示例调用
xpath_expr = "//*[contains(@text,'优先')]"
extract_xml_info('D:\desktop\饿了么.xml', xpath_expr)

效果


收藏1
全部评论1
最新
发布评论
评论