Poco
Poco copied to clipboard
iOS端,滑动ScrollView后,无法识别到标签
问题类型:控件识别、树状结构、poco库报错
描述问题bug 目前问题:iOS端,ScrollView向上滑动一次后,无法识别到页面的元素
下面是个人写的代码
def sl_get_coordinate(x1, y1, x2, y2):
"""
根据屏幕分辨率比例进行等比的滑动操作
:param x1: 起始横坐标
:param y1: 起始纵坐标
:param x2: 结束横坐标
:param y2: 结束纵坐标
:Example:
>>> sl_get_coordinate(0.500, 0.900, 0.500, 0.600) #从下往上滑动
>>> sl_get_coordinate(0.150, 0.600, 0.700, 0.600) #从左往右滑动
"""
# 获取设备屏幕分辨率(竖屏)
height = dev.display_info['height']
width = dev.display_info['width']
# 根据设备分辨率计算坐标值
value1 = [x1 * width, y1 * height]
value2 = [x2 * width, y2 * height]
swipe(value1,value2)
while poco(name='如何进行付款设置?').attr('isVisible') == '0':
sl_get_coordinate(0.500, 0.900, 0.500, 0.600) #从下往上滑动
Traceback (most recent call last):
File "/usr/local/lib/python3.7/site-packages/airtest/cli/runner.py", line 70, in runTest
exec(compile(code.encode("utf-8"), pyfilepath, 'exec'), self.scope)
File "/Users/xiaorongjie/PycharmProjects/nezha/iOS/testcase/home/home_help_center.air/home_help_center.py", line 38, in {module}
while poco(name="如何进行付款设置?").attr('isVisible') == '0':
File "/usr/local/lib/python3.7/site-packages/poco/proxy.py", line 39, in wrapped
return func(self, *args, **kwargs)
File "/usr/local/lib/python3.7/site-packages/poco/proxy.py", line 734, in attr
nodes = self._do_query(multiple=False)
File "/usr/local/lib/python3.7/site-packages/poco/proxy.py", line 874, in _do_query
raise PocoNoSuchNodeException(self)
poco.exceptions.PocoNoSuchNodeException: Cannot find any visible node by query UIObjectProxy of "如何进行付款设置?"
复现步骤 1、使用上面的代码,修改while的条件为一个不在屏幕上显示的元素,该元素需要滑动屏幕至少两次才能让其显示在屏幕上。
预期效果 个人目的,想在当前页面查找一个元素,未找到就上滑,直到该元素显示在屏幕上,才停止滑动。
相关截图
python 版本: python3.7
poco 版本: 1.0.83
设备:
- 型号: [ iPhone8 256G]
- 系统: [iOS 14.4.2]
- (别的信息)
其他相关环境信息 运行环境:macOS Big Sur 11.4