Skip to content

Latest commit

 

History

History
29 lines (25 loc) · 1.83 KB

遍历控制.md

File metadata and controls

29 lines (25 loc) · 1.83 KB

遍历控制

配置选项的作用可参考项目目录下的yaml格式的配置文件, 里面有详细的注释解释每个配置项的作用.

唯一性

appcrawler试图用接口测试的理念来定义app遍历测试. 每个app界面认为是一个url. 默认是用当前的activity名字或者navigatorbar来表示. 这个可以通过defineUrl配置实现自定义.

控件的唯一性通过配置项的xpathAttributes来定义. 默认是通过基本属性iOS的为name label value path, Androd的为resource-id content-desc text index这几个属性来唯一定义一个元素. 可以通过修改这个配置项实现自定义.

url的定义是一门艺术, 可以决定如何优雅快速有效的遍历

遍历行为控制

整体的配置项应用顺序为

1.capability

androidCapability和iosCapability分别用来存放不同的平台的设置. 最后会和capability合并为一个.

2.startupActions

用于启动时候自定义一些划屏或者刷新的动作.

3.selectedList

适用于在一些列表页或者tab页中精确的控制点击顺序
selectedList表示要遍历的元素特征
firstList表示优先遍历元素特征
lastList表示最后应该遍历的元素特征
tagLimit定义特定类型的控件遍历的最大次数. 比如列表项只需要遍历少数
需要注意的是firstList和lastList指定的元素必须包含在selectedList中

元素定位方法

appcrawler大量的使用XPath来表示元素的范围. 大部分的选项都可以通过XPath来指定范围. 比如黑白名单, 遍历顺序等

元素操纵方法

在一些配置的action字段里面, 除了支持简单的dsl方法列表外, 也支持scala语句. 这意味着你可以完全定义自己的流程. 比如action可以定义为click back等方法. 也可以定位为driver.findElementBy...方法. 甚至是Thread.sleep(3000)等编程语句.