AppCrawler自动遍历工具,适用于移动端

AppCrawler下载链接:https://github.com/seveniruby/AppCrawler,主要用途是回归遍历。原则从中间元素开始遍历

AppCrawler框架引擎

appium

adb

selenium

uiautomator2Appcra

 

环境准备

jdk:安装与环境配置

appium:软件安装并启用

模拟器或手机已连接

AppCrawler:已经下载

 

执行事件

复制代码
1、指定软件包命令
java -jar appcrawler-2.4.0-jar-with-dependencies.jar --capability "appPackage=com.xueqiu.android, appActivity=.view.WelcomeActivityAlias"

2、生成配置样本demo文件
java -jar appcrawler-2.4.0-jar-with-dependencies.jar --demo

3、执行配置模板用例
java -jar appcrawler-2.4.0-jar-with-dependencies.jar -c demo.yml

4、指定遍历报告输出目录
java -jar  appcrawler-2.4.0-jar-with-dependencies.jar -c  demo.yml  -o /tmp
常用执行命令
复制代码

demo样式模板,另存格式要设置为utf8,不然会报错:Exception in thread "main" java.nio.charset.MalformedInputException: Input l

复制代码
---
pluginList: []
saveScreen: true
reportTitle: ""
resultDir: "20220609183931"
waitLoading: 500
waitLaunch: 6000
showCancel: true
maxTime: 10800
maxDepth: 6
capability:
  noReset: "true"
  fullReset: "false"
  appium: "http://127.0.0.1:4723/wd/hub"
  appPackage: "com.xueqiu.android"
  appActivity: ".view.WelcomeActivityAlias"
testcase:
  name: "xueqiuApp AppCrawler"
  steps:
  - xpath: "//*[@text='行情']"
    action: click
selectedList:
    - xpath: "//*[contains(@resource-id, 'stock_index_quote_view_layout')]//*[@clickable='true']"
    - xpath: "//*[contains(@resource-id, 'content_recycler')]//*[@clickable='true']"
firstList: 
    - xpath: "//*[contains(@resource-id, 'content_recycler')]//*[@clickable='true']"
lastList:
- given: []
  when: null
  then: []
  xpath: "//*[@selected='true']/..//*"
  action: null
  actions: []
  times: 0
- given: []
  when: null
  then: []
  xpath: "//*[@selected='true']/../..//*"
  action: null
  actions: []
  times: 0
backButton:
- given: []
  when: null
  then: []
  xpath: "Navigate up"
  action: null
  actions: []
  times: 0
triggerActions:
- given: []
  when: null
  then: []
  xpath: "share_comment_guide_btn"
  action: null
  actions: []
  times: 0
xpathAttributes:
- "name"
- "label"
- "value"
- "resource-id"
- "content-desc"
- "instance"
- "text"
sortByAttribute:
- "depth"
- "list"
- "selected"
findBy: "default"
defineUrl: []
baseUrl: []
appWhiteList: []
urlBlackList: []
urlWhiteList: []
blackList:
- given: []
  when: null
  then: []
  xpath: ".*[0-9]{2}.*"
  action: null
  actions: []
  times: 0
beforeRestart: []
beforeElement:
- given: []
  when: null
  then: []
  xpath: "/*"
  action: "Thread.sleep(500)"
  actions: []
  times: 0
afterElement: []
afterPage: []
afterPageMax: 2
tagLimitMax: 2
tagLimit:
- given: []
  when: null
  then: []
  xpath: "确定"
  action: null
  actions: []
  times: 1000
- given: []
  when: null
  then: []
  xpath: "取消"
  action: null
  actions: []
  times: 1000
- given: []
  when: null
  then: []
  xpath: "share_comment_guide_btn_name"
  action: null
  actions: []
  times: 1000
assertGlobal: []
demo配置模板
复制代码

 

posted @   钟爱酷夏  阅读(234)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· C#/.NET/.NET Core优秀项目和框架2025年2月简报
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
· 【杭电多校比赛记录】2025“钉耙编程”中国大学生算法设计春季联赛(1)
点击右上角即可分享
微信分享提示