Google 官方 AppCrawles学习小结
Google 官方 AppCrawles学习小结
AppCrawler可自动化测试应用程序,无需编写和维护任何代码。
可以自动发出(轻按、滑动)等操作执行app,当应用程序崩溃或达到指定的超时时间将终止运行
可以在各种设备上运行它以查找崩溃,视觉问题或性能问题
每一次操作都会有截图以及相关日志。
缺点:不开源,只有安装包,感觉这不像谷歌的风格。
与monkey原理不同,monkey是随机点,不基于控件,appcrawler基于uiautomator的
官方可以访问的路径地址:
https://developer.android.google.cn/training/testing/crawler
使用此工具应保证使用最新版本的Android SDK ,如果是仅仅安装Android SDK,应确保包含最新的build tools 和 platform tools。
AppCrawler工具下载地址:https://dl.google.com/appcrawler/beta1/app-crawler.zip
使用操作:
1、启动模拟器,或者链接物理设备,确认设备已经通过adb连接成功
2、启用Crawler程序,命令如下:
不用安装,直接运行安装过的app:
java -jar crawl_launcher.jar
--app-package-name com.******.mproject
--android-sdk D:\android-sdk-windows
获取某处apk包进行安装app:
java -jar crawl_launcher.jar
--apk-file E:\SoftTest\00_Doc\04_Temp\03_Middleware\04_Test\Android\MAndroid_1.0.5_Build191011_TEST\MAndroid.apk
--app-package-name com.******.mproject
--android-sdk D:\android-sdk-windows
运行结束输出截图和日志相关文件在crawl_output文件夹内
配置选项
官方的配置选项
|
Option |
Description |
|
--android-sdk |
指定Android SDK路径。 此选项必填。 |
|
--apk-file |
指定你的App APK路径,App Crawler会对它进行安装和爬取。如果没有指定 —app-package-name选项,请使用此选项。 |
|
--app-package-name |
指定App包的名字。当应用程序已安装在设备上,且不需要重新安装时,请使用此选项。 |
|
--key-store |
指定给App和 Crawler APKs签名的密钥存储库的路径。当您的应用程序需要特定的签名才能正常运行时,请使用此选项。 |
|
--key-store-password |
指定为 --key-store 选项提供的密钥存储库的密码。如果指定了--key-store,那么这是必需的标志。 |
|
--timeout-sec |
指定Crawler运行超时时间,单位为秒,如果没有设置,默认为60s |
已知的问题
删除原始签名文件失败
在开始爬网之前,JDK 9用户可能会看到以下错误消息:
androidx.test.tools.crawler.launcher.exceptions.ApkSigningException:无法删除原始签名文件
如果遇到这种情况,我们建议使用JDK 8或10+。有关此问题的更多信息,请参见此 JDK 9错误。一些用户通过使用更新版本的Android Studio重建APK来解决此问题。
Google 官方 AppCrawles学习小结的更多相关文章
- MVP学习笔记——参考Google官方demo
demo地址:https://github.com/googlesamples/android-architecture 在这个项目里,每个包的分工都很明确,大体上来说,一个包会对应一个界面.一个界面 ...
- 【收藏】Android屏幕适配全攻略(最权威的Google官方适配指导)
来源:http://blog.csdn.net/zhaokaiqiang1992 更多:Android AutoLayout全新的适配方式, 堪称适配终结者 Android的屏幕适配一直以来都在折磨着 ...
- google官方的下拉刷新+自定义上拉加载更多
转载请标注转载:http://blog.csdn.net/oqihaogongyuan/article/details/50949118 google官方的下拉刷新+自定义上拉加载更多 现在很多app ...
- 【转载】Hyperledger学习小结
Hyperledger学习小结 自学Hyperledger Composer也有段时间了,是时候对所学的知识总结一下了.因为没有实际项目参与的话,差不多也就到此为止了.后续可能会去了解一下以太坊的技术 ...
- flex学习小结
接触到flex一个多月了,今天做一个学习小结.如果有知识错误或者意见不同的地方.欢迎交流指教. 画外音:先说一下,我是怎么接触到flex布局的.对于正在学习的童鞋们,我建议大家没事可以逛逛网站,看看人 ...
- Python 学习小结
python 学习小结 python 简明教程 1.python 文件 #!/etc/bin/python #coding=utf-8 2.main()函数 if __name__ == '__mai ...
- react学习小结(生命周期- 实例化时期 - 存在期- 销毁时期)
react学习小结 本文是我学习react的阶段性小结,如果看官你是react资深玩家,那么还请就此打住移步他处,如果你想给一些建议和指导,那么还请轻拍~ 目前团队内对react的使用非常普遍,之 ...
- android SwipeRefreshLayout google官方下拉刷新控件
下拉刷新功能之前一直使用的是XlistView很方便我前面的博客有介绍 SwipeRefreshLayout是google官方推出的下拉刷新控件使用方法也比较简单 今天就来使用下SwipeRefres ...
- objective-c基础教程——学习小结
objective-c基础教程——学习小结 提纲: 简介 与C语言相比要注意的地方 objective-c高级特性 开发工具介绍(cocoa 工具包的功能,框架,源文件组织:XCode使用介绍) ...
- pthread多线程编程的学习小结
pthread多线程编程的学习小结 pthread 同步3种方法: 1 mutex 2 条件变量 3 读写锁:支持多个线程同时读,或者一个线程写 程序员必上的开发者服务平台 —— DevSt ...
随机推荐
- [Codeforces Round #816 (Div. 2)] D. 2+ doors
这次Div.2比之前我打的有些要难啊,前三道题就耗了好多时间,D题干脆摆烂了... 还是太逊了 对于一个\(x\),有\(x|y_i=z_i\),那么我们设\(num[x]=z_1\)&\(z ...
- MySQL优化六,锁
一,MySQL中的锁 InnoDB中锁非常多,总的来说,可以如下分类: 这些锁都是做什么的?具体含义是什么?我们现在来一一学习. 1.2,解决并发事务问题 我们已经知道事务并发执行时可能带来的各种问题 ...
- 创建型模式 - 建造者模式Builder
学习而来,代码是自己敲的.也有些自己的理解在里边,有问题希望大家指出. 最近这个脑T---瘫----CSDN有毛病吧?我写这个都是涉及到广告了?谁家的广告? 谁给我钱了?审核策略设计者是什么NTR? ...
- 教你解决虚拟机用不了USB设备的苦恼。
如果你看见了上图的效果说明我们的苦恼是一样一样的. vm10 vm11 vm player都有这个问题!!!! 对不对?哈哈 . 在虚拟机右击设备点击连接(Connect) 然后听见你的电脑发出了硬 ...
- vulnhub靶场之VENOM: 1
准备: 攻击机:虚拟机kali.本机win10. 靶机:Venom: 1,下载地址:https://download.vulnhub.com/venom/venom.zip,下载后直接vbox打开即可 ...
- @RestControllerAdvice全局异常统一处理
spring项目中,我们通常规定了返回的格式(成功-失败-异常),特别是异常怎么处理方便呢? 1.自定义状态码实体 package com.ruoyi.common.constant; /** * 返 ...
- Spring框架JDBC
*Spring框架对JDBC进行简单的封装.提供了一个JDBCTemplate对象简化JDBC的开发 *步骤: 1.导入jar包 2.创建JDBCTemplate对象,以来与数据源DataSource ...
- 微信小程序分包
当我们程序太大的时候,打开小程序就会比较慢,此处就需要用到分包加载,按照模块划分不同的包,让用户在需要的时候才加载对用的模块,也就是用户在进入某些页面的时候才下载该页面的资源,提高小程序的打开速度,以 ...
- C语言-三子棋项目
开源地址 https://kxd.lanzoul.com/iLwHG0e4nupc 肯定有大量BUG 求指出 电脑自动下棋的算法很差 毕竟我也没特意去研究
- dvgis计算两点间距离的问题
先贴一段代码,是dvgis里的distance.js源码,dvgis是cesium的二次封装,可以参考参考: 1import{Cesium}from'@dc-modules/namespace' 2i ...