app自动化的过程中,底层逻辑是计算机通过adb与移动设备进行沟通,告诉移动设备,进行什么操作;

一、概念:

Andriod调试桥(adb),是一种命令行工具,可以让我们与设备进行通讯。

二、adb安装

1、需要先安装java JDK ,建议java 8或java 11

2、adb包含在Android SDK 平台工具软件包中,地址如下,下载后是个软件包,把该软件包解压到你需要的路径即可。

adb的官方地址:https://developer.android.google.cn/studio/releases/platform-tools

3、配置环境变量

 a、 ANDROID_HOME:值是你解压的文件platform-tools所在的路径;如下图

b、再在环境变量 Path中添加:%ANDROID_HOME%\platform-tools

4、点击确定后,验证adb是否安装ok,执行命令 adb --version,出现版本信息,则证明adb安装成功;

  备注:如果是win10环境,上面都配置好后,dos环境执行adb --version,提示adb 不是内部或外部命令,可以通过管理员身份启动(右键windonws图标-windows powershell(管理员))即可打开以管理员运行的dos窗口。

三、adb连接设备

1、通过数据线连接真实android设备;需要开启USB调试

2、连接模拟器:

  需要替换模拟器里的adb.exe;因为android模拟器的安装路径下也有一个adb.exe,但是该adb.exe可能和我们自己下载的adb.exe的版本不一致;所以需要替换

四、adb的常用命令:

1、查看设备连接

  adb devices -l

2、安装应用

  adb install 《apk安装包路径》, 注意:安装包路径使用英文双引号包裹

第二部分:Monkey和稳定性测试

一、概述

1、稳定性测试:指软件长时间的运行,系统版本是否稳定,是否持续的为用户提供服务;

2、稳定性测试如何开展:

  首选monkey

  monkey是向系统发送随机的用户事件流(如按键输入,触屏控制,手势控制等),实现对正在开发的应用程序进行稳定性测试。可以更好的模拟用户操作,确保app的稳定性。

3、monkey是什么:

  monkey是安卓厂商提供的,是移动设备内置的一个工具,在手机内部

二、使用monkey对app应用进行稳定性测试的原理:

  通过adb命令,去调用手机里的monkey,然后在手机上产生随机事件

  1、对于随机事件,可以控制的部分:

    可以控制随机事件的总数;

    可以控制随机事件的比例;

    可以指定运行的场景--》即应用(包名)

  2、adb shell monkey的命令

  a\ 随机100次事件: adb shell monkey 100

  b\指定单包: adb shell monkey -p xxxxx 10      # xxx为包名

  c\指定多包:adb shell monkey -p baoming1 -p baoming2 100

  d\日志: -v

      -v -v

      -v -v -v

  -v多代表日志越详细

  adb shell monkey -p baoming -v -v 100

  e\日志导出: adb shell monkey -p baoming -v 100 > test.txt

  f\控制比例:  adb shell monkey -p baoming --pct-touch 70 --pct-motion 30 1000

    上面命令的释义:--pct-touch事件占70%,--pct-motion占30%,总量为1000,指定应用;

1、app自动化的底层逻辑,adb及monkey和稳定性测试的更多相关文章

  1. 剖析一下"抢茅台"脚本底层逻辑

    本文作者:梁东东 前言: 今天你撸茅台了么? 撸茅台已经成为社会现象,茶余饭后讨论的最佳实践 2022年双十一大促已经完美收官,兄弟姐妹克服种种困难与挑战.. 备战的会议室忙碌中带着紧张,当峰值过后的 ...

  2. APP自动化框架LazyAndroid使用手册(1)--框架简介

    作者:cryanimal  QQ:164166060 APP自动化简介 APP自动化,即通过自动化的方式,对APP施行一系列的仿按键输入.触摸屏输入.手势输入等操作,以达到对APP的功能进行自动化测试 ...

  3. 手机APP自动化环境搭建

    1 摘要 近年来,随着移动应用从数量上和逻辑复杂程度上的增长,以及产品发布周期的紧缩,使得回归测试迫在眉睫,鉴于此APP自动化测试变得越来流行,当前主流的APP自动化工具有:Appium.Roboti ...

  4. APP自动化框架LazyAndroid使用手册(2)--元素自动抓取

    作者:黄书力 概述 前面的一篇博文简要介绍了安卓自动化测试框架LazyAndroid的组成结构和基本功能,本文将详细描述此框架中元素自动抓取工具lazy-uiautomaterviewer的使用方法. ...

  5. App自动化测试-1.App自动化介绍和环境搭建

    App自动化测试-1.App自动化介绍和环境搭建 *:first-child { margin-top: 0 !important; } body>*:last-child { margin-b ...

  6. App 自动化框架设计思路

    最近在整理和学习Appium+Java 自动化框架,对APP自动化框架的部分设想参考了一些文章,先进行整理下: 框架的思路一: 思考引入:https://www.cnblogs.com/yunfeio ...

  7. APP自动化环境配置

    做自动化很多人都不喜欢做app自动化,说实话,我也不喜欢做app自动化,但是没办法,老板给你钱,让你做,不得不做! 其实app自动化的难点就在于环境,环境OK了之后一切都和web自动化差不多,顶多就是 ...

  8. Appium + Python App自动化第一个脚本

    今天跟大家讲解一个Appium和Python App自动化的脚本.[1]打开你的夜神模拟器(或者连接你的手机) [2]打开桌面的Appium [3]下载你要测的App的apk文件,放到桌面[4]拖动你 ...

  9. [python]Appium+python +pytest 实现APP自动化,基于安卓

    1.安卓环境搭建 &关于app自动化,个人觉得安装过程比较复杂,脚本难度实现和web自动化差不多封装关键字即可,因此,下面会写安装.启动APP以及过程中遇到的一些坑(这一篇偏向解释给个人) & ...

  10. monkey怎么做APP自动化?

    前言: monkey是andriod平台自动化测试的一种手段,通过monkey程序模拟触摸屏幕.滑动,滚屏,按键来对设备进行压力测试,检测程序多久会出现异常第一种:设置好命令,做随机自动化 什么时候可 ...

随机推荐

  1. STM32F0库函数初始化系列:ADC

    static void ADC_Config(void) { ADC_InitTypeDef ADC_InitStructure; /* ADCs DeInit */ //ADC_DeInit(ADC ...

  2. Spring(AOP的认识、实现)

    2:Spring AOP AOP (Aspect Oriented Programming) 面向切面编程 OOP(Object Oriented Programming)面向对象编程,用对象的思想来 ...

  3. Typescript 回调函数、事件侦听的类型定义与注释--拾人牙慧

    实际项目中会运到的 Typescript 回调函数.事件侦听的类型定义,如果刚碰到会一脸蒙真的,我就是 这是第一次我自己对 Typescript 记录学习,所以得先说一下我与 Typescript 的 ...

  4. ONES 对话 Eolink :数字化企业连接世界的第一接口

    Eolink Eolink 的创业方向是一次无心插柳. 在 Eolink 创办之前,创始人刘昊臻先后参与了技术外包.在线医疗.O2O 电商等创业项目,但是觉得不太符合自己的期望. 2015 年底,刘昊 ...

  5. Os-hackNos

    Os-hackNos 目录 Os-hackNos 1 环境配置 1.1 靶场环境 1.2 靶机未获取到IP时配置 2 信息收集 2.1 端口扫描 2.2 目录扫描 3 对Drupal 7.57版本安全 ...

  6. ChatGPT API使用介绍

    1.概述 随着人工智能技术的不断发展,越来越多的AI产品被应用到各个领域,其中最具代表性的莫过于人工智能语言模型.语言模型是一种可以通过学习大量语言数据来预测文本或语音的技术,其应用范围十分广泛,如智 ...

  7. 解决Revit导出FBX模型材质丢失的问题

    初次使用Revit导出fbx格式模型,在导出模型后发现模型材质丢失了,上网查询之后也没到具体原因是什么,不过倒是找到了解决方式:在Revit中安装naviswork插件,然后从revit中导出nwc格 ...

  8. VueTSX 动态使用 element-plus 图标

    写 TSX 的目的 element-plus 图标集有很多,但有时需要动态使用某个图标,把所有可能用到的图标都列举出来,通过 v-if 在组件中决定到底渲染哪一个,很费时. .vue 单文件组件中做不 ...

  9. LeetCode-1609 奇偶树

    来源:力扣(LeetCode)链接:https://leetcode-cn.com/problems/even-odd-tree 题目描述 如果一棵二叉树满足下述几个条件,则可以称为 奇偶树 : 二叉 ...

  10. vue模板三目运算判断报错

    问题: 关于vue三目运算符提示报错 1.三目运算符等于判断 {{ a==b ? '是' : '否'}} 2.其他三目运算符 <代表小于号(<) >代表大于符号(>) ≤表示小 ...