您的位置:首页 > 移动开发

appium – 使用resource id定位

2016-03-24 17:06 579 查看
这一节将分享一下如何使用resource id来定位android策略。

什么是resource id,这个不属于本文的范畴,大家可以点这里了解。

我们可以有两种方式来使用resource id进行定位:

使用
findElement(By.id("resourceId"))
的方式。这也是原生的webdriver定义的方法,不过竟然在appium的官方文档里没有提及,属于隐藏技;

使用
find_elements_by_android_uiautomator('new
UiSelector().resourceId("the_id")')
的方式;关于uiautomator定位后面的教程会展开讲解;

从上面的代码片段可以看到,使用
find_element_by_id
的方式进行定位是最简便的。

那么怎么获取控件的resource id呢,使用uiautomatorviewer就可以了。具体方法如下图所示。





现在就以上图所示的android原生计算器程序为例,看一下每种语言是如何实现点击【9】这个按钮的。


目的

点击计算器上的【9】这个按钮。该按钮的id是
com.android.calculator2:id/digit6
 。先甜后苦,从ruby开始。


Ruby篇

CODE:


Python篇

CODE:


Java篇

CODE:
如果读者对webdriver很熟悉的话,那么掌握这个方法是非常简单的。如果对webdriver不熟悉,那么可以参考乙醇的webdriver实用指南,先学习一下webdriver的基础知识。

这一节我们写了一些脚本去进行控件定位,在实际的项目中,这些没有任何断言的脚本是基本上无法完成测试用例的功能的。

先卖个关子,下下一节乙醇将会带大家写第一个appium的测试用例。

那么下一节我们将学习如何使用class name进行定位。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: