Appium AppiumForWindows 定位 Android app 无 text、无 id 的控件

linda · 2014年12月04日 · 最后由 linda 回复于 2014年12月04日 · 2037 次阅读


如图怎么定位到 button5 的控件,
.waitForElementsByClassName('android.widget.Button')[5].click()
===提示 “ TypeError: Cannot call method 'click' of undefined”
.ElementByAndroidUIAutomator("new UiSelector().className(\"android.widget.Button\").index(5)")
==因为此页面有两个序号为 5 的 button,这样写会定位到第一个,

求指点,谢谢

共收到 3 条回复 时间 点赞

1、waitForElementsByClassName 这是你自己封装的吗?
2、可以先找 ScrollView,再找它之下的 Button

2楼 已删除
3楼 已删除

#1 楼 @sanlengjingvv 谢谢你得回复,我用的 node.js 写的
1、waitForElementsByClassName 是 wd api 的,
2、先定位到 scrollview,下面同序号的 button 不唯一,有什么好的解决思路吗?

光看结构只能想到这样了:第一个 ScrollView 下第一个 LinearLayout 下第四个 View 下第……
能发下界面,介绍下业务流程吗?举个常见的 UI 设计:

类型:内容

内容是之前操作输入的,除此没有其他标识,但类型控件的 text 是固定的,它俩相邻。

如果能让开发加上 content-desc 或者测试开分支加,用 findElementByAccessibilityId 就最好了

需要 登录 后方可回复, 如果你还没有账号请点击这里 注册