深入解析AppCrawler:开源自动遍历测试工具配置指南

Appcrawler是一个基于自动遍历的App爬虫工具,支持Android和IOS,支持真机和模拟器。最大的特点是灵活性高,可通过配置来设定遍历的规则。

配置文件格式

执行参数与配置文件

  • capability设置:与appium完全一致

  • testcase:用于启动app后的基础测试用例

  • selectedList:遍历范围设定

  • triggerActions:特定条件触发执行动作的设置

  • selectedList:需要被遍历的元素范围

  • firstList:优先被点击

  • lastList:最后被点击

  • tagLimitMax:同祖先(同类型)的元素最多点击多少次

  • backButton:当所有元素都被点击后默认后退控件定位

  • blackList:黑名单

  • maxDepth: 遍历的最大深度

配置的最小单元 测试用例模型

testcase的完整形态
  • given:所有的先决条件

  • when:先决条件成立后的行为

  • then:断言集合

testcase的简写形态
  • xpath:对应when里的xpath

  • action:对应when的action

执行参数比配置文件优先级别高
  • given 前提条件

  • when 执行动作

  • then 写断言

简写形态

  • xpath xpath支持xpath表达式、正则、包含

  • action 支持

xpath定义

  • xpath - //[@resource-id=‘xxxx’] - //[contains(@text, ‘密码’)]

  • 正则 - ^确定$ - ^.*输入密码

  • 包含 - 密码 - 输入 - 请

action定义

  • "" 只是截图记录

  • back 后退

  • backApp 回退到当前的app 默认等价于back行为 可定制

  • monkey 随机事件

  • click

  • longTap

  • xxx() 执行scala或者java代码 - Thread.sleep(3000) - driver.swipe(0.9, 0.5, 0.1, 0.5)

  • 非以上所有行为是输入 xx ddd

完整配置文件

---
maxTimeDescription: "最大运行时间"
maxTime: 10800
maxDepthDescription: "默认的最大深度10, 结合baseUrl可很好的控制遍历的范围"
maxDepth: 10
capabilityDescription: "appium的capability通用配置,其中automationName代表自动化的驱动引擎,除了支持appium的\
  所有引擎外,额外增加了adb和selenium的支持"
capability:
  appActivity: ".ApiDemos"
  appium: "http://127.0.0.1:4723/wd/hub"
  noReset: "true"
  appPackage: "io.appium.android.apis"
  fullReset: "false"
testcaseDescription: "测试用例设置,用于遍历开始之前的一些前置操作,比如自动登录"
testcase:
  name: "AppCrawler TestCase"
  steps:
    - given: []
      when: null
      then: []
      xpath: "/*/*"
      action: "Thread.sleep(1000)"
      actions: []
      times: -1
triggerActionsDescription: "在遍历过程中需要随时处理的一些操作,比如弹框、登录等"
triggerActions:
  - given: []
    when: null
    then: []
    xpath: "permission_allow_button"
    action: ""
    actions: []
    times: 3
  - given: []
    when: null
    then: []
    xpath: "允许"
    action: ""
    actions: []
    times: 3
selectedListDescription: "默认遍历列表,只有出现在这个列表里的控件范围才会被遍历"
selectedList:
  - given: []
    when: null
    then: []
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值