APP专项测试

1、网络测试

可使用抓包工具辅助网格测试推荐:fiddler,Charles

(1)网络切换2G-3G-4G-wifi-网络信号差--无网
(2)网络信号弱关注是否出现ANR、crash

2、中断测试

(1)意外中断a、来电b、短信c、闹铃d、断网e、断电f、视频聊天g、语音聊天h、无响应i、系统更新提醒j、内存不足提醒k、其他app的消息通知
(2)任务切换a、锁屏b、切换到其他应用

3、兼容测试

(1)不同的机型
(2)不同的操作系统版本

注意:app兼容测试方法
(1)手工测试(一般适用于用户量小、且对兼容测试要求不高的项目)
(2)云测试平台(一般适用于用户量大、且对兼容测试要求高的项目)

目前市场上主流云测试平台包括:
(1)腾讯云测:

http://wetest.qq.com

(2)百度云测:

http://mtc.baidu.com

(3)阿里云测:

http://mqc.aliyun.com/

(4)testin云测:

https://www.testin.cn/

4、性能测试

(1)客户端性能测试a、流量消耗b、耗电量c、CPUd、内存消耗
(2)服务器端性能测试

mobileperf:阿里巴巴开源的app性能测试框架

官方地址:https://github.com/alibaba/mobileperf
缺点:只支持Android5.0-10.0,不支持iOS

perfdog:腾讯免费工具

官方地址:https://perfdog.qq.com

5、UI测试

(1)横竖屏切换
(2)手势操作a、长按呼出菜单b、双手捏合放大放小c、滑动
(3)输入信息界面自适应键盘遮挡
(4)其他UI测试要点与web基本相同

6、安全测试

(1)密码不明文显示
(2)密码框不支持复制
(3)敏感信息加密传输
(4)多次登录失败,锁定账号
(5)登录成功后,长时间不操作软件,session是否丢失,提示重新登录
(6)权限控制
(7)SQL注入

7、稳定性测试(使用monkey完成)

8、安装测试

(1)安装前a、干净的安卓系统b、装有旧版本的安卓系统c、装有本版本的安卓系统d、装有最新版本的安卓系统(需要安装旧版本)e、装有杀毒软件的安卓系统f、装有同行业其他软件的安卓系统g、内存不足的安卓系统(2)安装过程中a、意外中断b、许可确认提示c、是否显示安装进度(3)安装后a、软件是否可以正常启动b、检查安装文件是否齐全c、检查许可权限d、统计安装总时长

9、升级测试

(1)自动升级
(2)弹出是否升级的提示,人工选择
(3)升级过程中意外中断
(4)升级过程中内存不足
(5)升级后数据是否同步
(6)app运行状态下升级
(7)跨版本升级测试

10、卸载测试

(1)大型app考虑卸载过程中意外中断
(2)app处于运行状态下进行卸载
(3)app卸载后,对应的文件是否删除
(4)卸载后,重新再次安装该版本app
(5)是否弹出卸载确认提示

11、接口测试(需抓包工具辅助)

(1)系统内模块间的接口
(2)系统外第三方接口(有界面,主调)
(3)系统外被调接口(无界面,需要接口测试工具模拟发送请求)

12、其他测试

(1)支持文件格式a)图片上传b)视频上传c)文件上传

13、app自动化测试工具

uiautomator2做安卓自动化测试

 gitHub地址:https://github.com/openatx/uiautomator2

airetest :希望提供平台无关的API,让你的自动化代码可以运行在不同平台的应用上

gitHub地址:https://github.com/AirtestProject/Airtest/blob/master/README_zh.md
特点:跨平台的UI自动化框架,适用于游戏和App

Appium:开源框架

官方地址:https://appium.io/
建议使用:操作简单,支持全面

macaca:面向多端的自动化测试

官方地址:https://macacajs.github.io/zh/

APP测试需要的工具

一、adb测试工具

adb:android debug bridge,安卓调试桥梁,一款用于连接电脑与安卓手机的工具

1、adb get-serialno  获取序列号:
2、adb devices:用于查看电脑当前连接的安卓设备
3、adb install apk文件包:在安卓设备上安装app注意:若当前电脑连接的安卓设备2台及以上,可通过以下命令完成安装:adb -s 设备序列号 install apk文件包install  -r 覆盖安装,保留数据和缓存文件  -d 解决低版本version问题  -s 安装apk到sd卡
4、adb uninstall app软件包名:卸载appuninstall  可选参数-k的作用为卸载软件但是保留配置和缓存文件
5、adb shell:进入adb运行环境5.1、adb [-d|-e|-s <serial Number>] <command>  -d:真机(多个设备中只有一个真机时适用)    -e:模拟器(多个设备中只有一个模拟器时适用)   -s:序列号5.2、adb shell ls [-al]   列出目录下的文件和文件夹,可选参数-al可查看文件和文件夹的详细信息5.3、adb shell cd <folder>   进入文件夹5.4、adb shell cat <filename>  查看文件5.5、adb shell rename path/oldfilename path/newfilename    重命名文件5.6、adb shell rm -r <folder>   -r 可选参数用于删除文件夹及下面的所有文件 5.7、adb shell mv path/1 path/2    移动文件5.8、adb shell cp file path/1    拷贝文件5.9、adb shell mkdir path/1      创建目录5.10、adb shell chmod 777 filename      设置文件最高读写权限6、adb push 电脑端路径及文件 手机端路径:将电脑端指定的文件传输到手机指定的路径中
7、adb pull 手机端路径及文件 电脑端路径:将手机端指定的文件传输到电脑端指定的路径中
8、adb  logcat 查看log:安卓系统中生成的日志,有哪些级别?I:信息V:冗(rong)余 (最低优先级)D:调试W:警告E:错误F:严重错误S — 静默 (最高优先级,不会打印任何信息)日志格式:adb logcat  -s 过滤指定参数log  -v time 保留日志时间  >> 追加写  > 覆盖写日志过滤:adb -e logcat 标签名:级别>1.txt  或者使用grep过滤adb logcat | grep "SEARCH_TERM"如:adb -e logcat taobao:w>11.txt将w级别及其以上级别日志,且含taobao标签的所有日志保存到11.txt中如:adb -e logcat *:w>11.txt将w级别及其以上级别日志,所有日志保存到11.txt中使用来清除旧的日志adb logcat -c9、adb reboot   重启机器:
10、adb reboot [bootloader|recovery]    重启设备,可选参数进入bootloader(刷机模式)或recovery(恢复模式)
11、adb shell am start -n package_name     启动应用
12、adb kill-server 终止adb服务进程:
13、adb start-server      重启adb服务进程:
14、adb help   获取帮助 里面有adb的各种命令和参数的介绍
15、adb version 查看adb版本
16、adb root   以root权限重启adb
17、adb remount    将system分区重新挂在为可读写分区,此命令在操作系统目录时很重要
18、adb shell pm path <package_name>   查看app的路径  18.1、adb shell pm list packages  查看所有App的名称查看手机上的APP名称。可以在后面加上 -f
19、adb shell dumpsys package <package_name> | grep  version     查看apk的版本信息
20、adb shell pm clear <PACKAGE>   删除与包相关的所有数据:清除数据和缓存
21、adb shell ps <package_name|PID> 【 adb shell ps | grep <package_name>】  查看某个app的进程相关信息
22、adb shell kill pid Number杀掉某个进程,一般用于模拟某个bug复现
23、adb shell dumpsys meminfo <package_name|PID>    查看某一个app的内存占用
24、adb shell getprop | grep heapgrowthlimit    查看单个应用程序的最大内存限制
25、adb shell dumpsys batterystats ><package_name> > xxx.txt        获取单个应用的电量消耗信息
26、adb shell wm size【adb shell dumpsys window | grep Surface】     查看手机分辨率
27、adb shell getprop | grep version          查看手机sdk版本
28、adb shell getprop | grep product   查看手机型号信息
29、 adb shell cat /proc/meminfo    查看系统当前内存占用
30、adb shell top   查看设备上进程的cpu和内存占用情况
31、adb shell screencap /sdcard/screen.png   命令来进行手机屏幕截图
32、adb shell screenrecord /sdcard/demo.mp4   命令来录制屏幕视频
33、adb shell input  模拟按键/输入33.1、adb shell input  text "insert%stext%shere"    命令向屏幕输入框输入一些信息%s表示空格33.2、adb shell input tap 500 1450  模拟屏幕点击事件33.3、adb shell input swipe 100 1500 100 450 100   模拟手势滑动事件表示从屏幕坐标(100,1500)开始,滑动到(100,450)结束,整个过程耗时100ms.  【adb shell input swipe 100 500 100 500 500】模拟长按事件33.4、adb shell input keyevent  模拟点按实体按钮的命令
keycode 描述
3 HOME 键
4 返回键
5 打开拨号应用
6 挂断电话
24 增加音量(只显示音量icon需手滑的)
25 降低音量(只显示音量icon需手滑的)
26 电源键
27 拍照(需要在相机应用里)
64 打开浏览器
82 菜单键
85 播放/暂停
86 停止播放
87 播放下一首
88 播放上一首
122 移动光标到行首或列表顶部
123 移动光标到行末或列表底部
126 恢复播放
127 暂停播放
164 静音
176 打开系统设置(有的打不开)
187 切换应用
207 打开联系人
208 打开日历
209 打开音乐
210 打开计算器(有的打不开)
220 降低屏幕亮度
221 提高屏幕亮度
223 系统休眠
224 点亮屏幕
231 打开语音助手
276 如果没有wakelock则让系统休眠

二、monkey

1、使用场合:主要用于app的稳定性测试。安卓系统自带的一款工具。
2、原理:通过发送大量的随机事件,测试手机或某app的稳定性。
3、adb shell monkey 事件数>日志文件:测试手机的稳定性
4、monkey命令的基本参数
(1)-p app软件包名
注意:若需要同时往多个app发送随机事件,增加-p app软件包名2即可
如:
adb shell monkey  -p 软件包名1 -p 软件包名2 事件数>日志文件
(2)日志详细级别:-v:详细级别为1等级-v -v-v -v -vANR:应用程序无响应,application not responding
数
(3)增加事件延迟--throttle 毫秒数
(4)-s 种子数5、monkey的事件类型
(1)--pct-touch 百分比:触摸事件
注意:百分比可书写为70或70%,多种事件百分比相加不能大于100%
(2)--pct-motion 百分比:滑动事件
如:adb shell monkey -p 软件包名 -v -v -v --pct-touch 60 --pct-motion 20 5000 >日志文件
(3)--pct-trackball 百分比:轨迹事件
(4)--pct-nav 百分比:上下左右方向键
(5)--pct-majornav 百分比:Home键,菜单键,返回键
(6)--pct-syskeys 百分比:声音键、锁屏键等系统键6、monkey的调试选项
(1)--hprof:在/data/misc目录下会生成profiling报告,该报告文件容量较大,小心使用
(2)--ignore-crashes:忽略崩溃。monkey执行过程中,遇到崩溃,不停止,继续执行下去
(3)--ignore-timeouts:忽略超时错误(ANR)。monkey执行过程中,遇到ANR,不停止,继续执行下去
(4)--ignore-security-exceptions:忽略许可错误。monkey执行过程中,遇到许可错误,不停止,继续执行下去
(5)--kill-process-after-error:程序出错后结束进程。

ADB用法大全:

点开链接访问具体内容:http://www.wanandroid.com/blog/show/2310

笔者先写这些测试方法,后续会继续更新,如有其他好的测试方法请在下方留言!!!

APP专项测试方法和工具的使用相关推荐

  1. 手机移动APP安全测试方法、工具和一些容易产生安全问题

    0x00 背景 随着移动互联的扩张,移动APP承载了更多企业的终端梦."用户手机安装APP以后,企业即埋下一颗种子,可持续与用户保持联系."  种子是种下了,可要是它本身就是个[特 ...

  2. APP专项测试方法有哪些?

    APP专项测试: 系统:安卓.苹果(Android IOS) 1.应用性能测试(CPU 内存 电量 流量 温度) 1)CPU:空闲 中等消耗 高消耗,检测cpu的运行情况 adb shell dump ...

  3. 软件测试技术之APP专项测试方法汇总

    APP专项测试: 系统:安卓(Android).苹果(IOS). 1.应用性能测试(CPU 内存 电量 流量 温度) 1)CPU:空闲 中等消耗 高消耗,检测cpu的运行情况. adb shell d ...

  4. 安卓桌面软件测试自学,最全的安卓APP专项测试方法!不看悔青肠

    本文来自牛鹭学院学员:丁孟辉 App启动时间 冷启动:当启动应用时,后台没有该应用的进程,这时系统会重新创建一个新的进程分配给该应用,这个启动方式就是冷启动 启动app命令:adb shell am ...

  5. AndroidIOS APP启动速度专项测试方法

    APP启动速度是一个APP体验好坏最重要的一个标志,一般APP上线之前都会进行启动速度的专项测试,最近看了很多这个测试方法,发现大家说的都不一致,我在这里总结下,用下面这个方法测试出来的启动速度是比较 ...

  6. Android 应用开发(28)----APP功耗测试方法

    APP功耗测试方法 业界比较难测试的一个测试,比如新旧版本对比不一定能说明问题,所以耗电量测试只能定量测试,作为辅助数据帮助我们测试.功耗测试可以基于硬件测试方法(第三方精密仪器)和基于软件测评方法. ...

  7. 移动 App 应用测试方法与思路

    移动 App 应用测试方法与思路 分析三种主流的移动 App 类型,并给出和普通web测试不同的地方,给出测试的思路,并给出部分场景组合. 附:安卓 App 测试常用 adb命令和 money 命令 ...

  8. android app功耗测试方法,APP功耗测试方法

    APP功耗测试方法 发布时间:2018-04-26 23:27, 浏览次数:560 , 标签: APP 业界比较难测试的一个测试,比如新旧版本对比不一定能说明问题,所以耗电量测试只能定量测试,作为辅助 ...

  9. Android App专项测试-压力测试篇

    小伙伴们大家好,今天主要分享的主题是Android App专项测试.如何进行Android App专项测试压力测试呢?我们主要通过Android平台的一门工具Monkey.在学习本门课程之前,如果你具 ...

  10. Android App 专项性能监控工具

    该工具可以用来测试安卓APP专项测试中的流量,内存,cpu,fps等测试项 一.该工具使用环境: 需要安装JDK和SDK,并且配置环境变量才可使用: 测试设备安卓系统要>=5.0系统以上 关闭电 ...

最新文章

  1. 2018年跨行学习mysql_2018年,让你的数据库变更快的十个建议
  2. 为什么大多数IP地址通常以192.168开头?
  3. PostMessage
  4. 7 个习惯帮你提升Python运行性能
  5. 变量定义类型长度的理解
  6. Ant Desing Pro2.0(一)项目初始化
  7. .NET基础 (04)基础类型和语法
  8. Install/Remove of the Service Denied
  9. android 设置iptv vlan tag的命令,关于VLAN TAG的命令行设置
  10. 【Python】阿里云对象存储OSS图床上传图片
  11. 两万文字多图详解常用软件工具使用(持续更新)
  12. C#图像处理:在图片上写字,文字位置居中问题
  13. 目前最值得收藏的100个各类资源站
  14. Poj 2965 The Pilots Brothers‘ refrigerator
  15. mysql sql调用函数_MySQL函数使用
  16. WordCount单词计数详解
  17. python和按键精灵自动化测试_按键精灵对APP自动化测试(上)
  18. java 框架 直播_java如何实现秀场直播功能?基于即构SDK开发
  19. linux cp保留时间,linux – cp -p会保留一些文件的时间但不是全部吗?
  20. SwiftUI macOS 设计之Menu设计规范

热门文章

  1. VMware中的Fedora9下安装VMtool后图形界面无法启动
  2. VS2010 SP1安装失败
  3. JQueryUI进度条组件学习笔记
  4. jquery 进度条 滑块
  5. MATLAB 快速傅里叶变换分析
  6. MD5类加密解密工具类
  7. 基于樽海鞘群算法的线性规划求解matlab程序
  8. win10电脑打开计算机快捷键,运行快捷键,教您win10打开运行快捷键是什么
  9. Winform Chart控件常见问题汇总
  10. 【教你几种禁止修改IP的方法】