Appium - 机器人框架 - 选择下拉
Posted
技术标签:
【中文标题】Appium - 机器人框架 - 选择下拉【英文标题】:Appium - Robot Framework - select drop down 【发布时间】:2014-09-15 15:40:06 【问题描述】:我正在通过机器人框架使用 Appium。我能够使用点击元素并执行操作。但是当从下拉列表中选择一个值时,appium 没有内置命令。
我的例子:我正在尝试使用 redbus 移动应用程序。我有一个日历,我需要在其中选择某个日期,比如 21 日。
我能够找到元素 21 的资源 id,但它对于日历中的所有数字都是相同的。
这里的“资源 ID”是相同的,但“文本”会根据数字而变化。我的“资源 ID”是in.redbus.android:id/gridCellin.redbus.android:id/gridCell
。
该资源 ID 的点击元素未点击 21,因为所有数字的资源 ID 相同。
请帮助我。我卡在这里了。
【问题讨论】:
【参考方案1】:您可以通过多种方式引用元素,包括类名、id 和文本。您是否尝试过通过文本找到您需要的元素?如果这不起作用,那么您可以使用类名和实例,尽管这并不准确。
ID:find_element_by_id(your_date_id)
类:find_element_by_class_name(your_class_name,instance_number)
文本:find_element_by_name(21)
如果您没有使用过 UIAutomatorViewer,那么我建议您使用它来查找可用于元素的不同标识符。
【讨论】:
在这些数字之间变化的唯一定位器是文本。我试着给点击元素文本=21。我得到的错误是不支持带有前缀文本的“元素定位器”。我只使用 UIAutomatorviewer。【参考方案2】:我终于找到了解决问题的方法。
我正在使用机器人框架。所以,我使用了 xpath=//*[@text=21]
使用 xpath 几乎每次都能正常工作,除非任何节点中有任何特殊字符。
我也在尝试为这种特殊字符情况找到解决方案。找到答案后我会发布。
【讨论】:
以上是关于Appium - 机器人框架 - 选择下拉的主要内容,如果未能解决你的问题,请参考以下文章
机器人框架 - Appium 库:启动应用程序时出现安全异常