资讯动态

Poco框架实操:获取节点属性的高效技巧

发布时间:2026/10/17 10:47:45 来源:尧图企业网站定制
上期推文我们介绍了Poco UI树下的节点关系以及通过节点关系去寻找我们所需要节点的方法那么本周我们来分享一下当我们寻找到所需要节点后能获取到什么信息呢又怎么去获取呢Poco节点的属性操作2.1 获取控件文本属性get_text( )在UI自动化测试 中获取节点的文本信息是常见的需求。Poco框架提供了get_text()方法它能够轻松提取指定元素的文本内容。无论是按钮上的提示文字还是列表项的显示内容get_text()都能一一捕获从而实现对节点的文字内容进行操作或展示。poco(游戏增强器).get_text()2.2 获取控件名字属性get_name()get_name()方法可以帮助快速获取元素的名称这对于识别和操作节点控件非常重要。通过使用该方法可以方便地获取到节点的名称从而更好地进行元素的定位和后续操作。poco(文本输入).get_name()2.3 获取控件尺寸大小属性get_size()了解节点控件的尺寸对于测试控件的布局和设计等至关重要。get_size()方法提供了一种简便的方式来获取元素的宽度和高度可以确保元素在不同设备和分辨率 上的正确显示。poco(文本输入).get_size()2.4 获取控件的顶部、右侧、底部和左侧的归一化坐标系get_bounds()get_bounds()方法返回节点元素的边界框参数包括元素的顶部(top)、右侧(right)、底部(bottom)和左侧(left)这些与标准坐标系中屏幕边缘的归一化坐标。这些信息可以用于截图控件、点击控件等可以更好地规划自身的脚本设计。poco(文本输入).get_bounds()2.5 获取控件位置大小属性get_position()get_position()返回控件元素的中心坐标通常以相对坐标x,y返回坐标通过获取控件元素的中心坐标我们可以在需要的时候更快地定位到该位置从而实现一些交互操作。poco(播放).get_position()2.6 获取控件属性attr(type)attr(type)方法可以检索节点的特定属性值需要在括号内输入所需要的属性值需要以字符串的形式输入即可查询到所需要的属性值。当上述查询属性的语句都无法查询到自己所需要的属性值的情况下可以通过attr(type)去进行查询。poco(文字输入).attr(text)实际使用案例结合上述所讲的获取控件方法我们用个小小的案例去演示一下日常使用的场景。参考代码如下# -*- encodingutf8 -*- __author__ Airtest from airtest.core.api import * auto_setup(__file__) from poco.drivers.android.uiautomation import AndroidUiautomationPoco poco AndroidUiautomationPoco(use_airtest_inputTrue, screenshot_each_actionFalse) #打开网易云音乐app start_app(com.netease.cloudmusic) sleep(6.0) #【使用get_text】获取当前输入在搜索框上的文字 tem poco(com.netease.cloudmusic:id/searchHintText).get_text() print(目前搜索框内的文字是 tem) #【使用get_name】获取“每日推荐”在UI树上的节点名 name poco(text每日推荐).get_name() print(该控件的name为 name) #点击进入每日推荐界面 poco(text每日推荐).click() #【使用get_size】获取在“每日推荐”界面上的广告大小 adsize poco(com.netease.cloudmusic:id/daily_ad_banner).get_size() print(该广告位的长宽大小为 name) #【使用get_bounds】获取在“每日推荐”界面上的广告顶部、右侧、底部和左侧的归一化坐标系 adbounds poco(com.netease.cloudmusic:id/daily_ad_banner).get_bounds() str(adbounds) print(f该广告位的顶部、右侧、底部和左侧的归一化坐标系分别为{adbounds}) sleep(1.0) #【使用get_position】获取在“每日推荐”界面上的广告位置坐标 adpos poco(com.netease.cloudmusic:id/daily_ad_banner).get_position() str(adpos) print(f该广告位的位置坐标为{adpos} ) sleep(1.0) #【使用attr去查询】获取在“每日推荐”界面上的广告位置坐标 adpos2 poco(com.netease.cloudmusic:id/daily_ad_banner).attr(pos) str(adpos2) print(f利用attr获取的位置坐标为{adpos2} ) sleep(1.0)小结本周我们介绍了5种查询Poco 节点属性值的方式其中包括1、get_text( )获取节点的text属性值2、get_name( )获取节点的name属性值3、get_size( )获取节点的size属性值4、get_bounds( )获取节点的顶部、右侧、底部和左侧的归一化坐标系5、get_positions( )获取节点的位置坐标6、attr(type)获取所需要的属性值通过这些方法我们能够更深入地理解和使用Poco的UI树节点可以更进一步地完善自己的脚本。如果同学们在使用Poco进行自动化测试的过程中遇到了问题或者有任何想要深入了解的知识点欢迎在官方交流群里告诉我们或者提交issue 也欢迎大家投稿。后续我们会带来更多精彩的有关Poco专题内容请大家持续关注我们敬请期待哦最后下方这份完整的软件测试 视频教程已经整理上传完成需要的朋友们可以自行领取【保证100%免费】​​​软件测试面试文档我们学习必然是为了找到高薪的工作下面这些面试题是来自阿里、腾讯、字节等一线互联网大厂最新的面试资料并且有字节大佬给出了权威的解答刷完这一套面试资料相信大家都能找到满意的工作。

读完文章,也想定制专属网站?

尧图设计师 24 小时内与您沟通定制方案

免费获取报价 →
↑