IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 移动开发 -> app测试1 -> 正文阅读

[移动开发]app测试1

移动app测试(一)

课程概述

随着移动互联网的发展,越来越多的软件被迁移到了移动端,也就有了越来越多的移动app测试的工作。无论是android系统上的app还是ios系统上的app,都可以从不同的测试类型角度来考虑测试,在开展不同的测试类型时会使用到不同的测试工具。

通过本课程的学习,学员可以掌握移动app的主要测试类型的测试思路以及会使用到的测试工具,这些测试类型包括功能测试、性能测试、兼容性测试和网络测试等。

课程环境

  • ubuntu系统
  • 阿里云手机
  • 考研帮应用
  • ecmobile应用
  • fiddler
  • solopi
  • monkey
  • 阿里云
  • qnet

学习收获

  • 掌握adb工具使用
  • 理解移动app主要测试类型的测试思路
  • 掌握fiddler工具的使用
  • 掌握solopi工具的使用
  • 掌握monkey工具的使用
  • 掌握阿里云测的使用
  • 掌握qnet工具的使用

任务1:了解什么是adb工具

【任务目标】

  • 了解手机测试包含的内容;
  • 了解adb工具工作原理;
  • 掌握如何查看adb工具使用帮助和版本。

1.1 手机测试的内容

手机测试分为:

1、手机app的测试,比如测试微信app、抖音app等。

手机app的测试的重心在app本身。

2、手机整机测试,比如测试华为mate20、小米10等。

手机整机测试测试手机基础功能(比如通话、短信、wifi、蓝牙等)和手机预装的app。手机整机测试还会包含硬件的测试,比如电池放电。

无论是手机app测试还是手机整机测试,都可以使用到adb工具。

1.2 什么是adb工具

实际生活中可以使用360手机助手连接android手机,对手机上的app、图片、视频、短信等进行管理。360手机助手实际就是通过adb工具连接手机并对手机进行操作的。

adb工具用于电脑连接并操作android手机,adb工具包含在android studio中sdk平台工具中。

SDK Platform Tools 版本说明 ?|? Android 开发者 ?|? Android Developers

adb工具已经在ubuntu的云主机上安装好了,对应的目录是/lib/android-sdk/platform-tools/。

adb工具包含:

1、adb客户端(pc上)

2、adb服务器端(pc上)

3、adbd进程(android手机上)

android手机通过adbd的程序和pc上的adb服务器连接。

adb客户端---------------------adb服务器端-----------------adbd

如果发现pc无法连接上android手机,可以考虑:

1、重启adb服务器

2、重启手机/模拟器

adb的命令可以通过adb --help来查看。在ubuntu云主机的桌面上右键选择在此打开终端,即可打开终端界面,输入命令即可。

可以通过adb version来查看adb工具的版本。在ubuntu云主机的桌面上右键选择在此打开终端,即可打开终端界面,输入命令即可。

任务2:掌握adb工具常用命令

【任务目标】

  • 掌握如何用adb工具查看连接设备
  • 掌握如何用adb工具安装和卸载应用
  • 掌握如何用adb工具进行文件复制
  • 掌握如何用adb工具进行截图操作
  • 掌握如何用adb工具抓取应用运行日志

以下adb工具常用命令在针对android应用进行测试时经常会使用到。

  1. adb devices 查看连接设备
  2. adb install 安装应用
  3. adb uninstall 卸载应用
  4. adb shell 进入android系统
  5. adb shell screencap -p /sdcard/screen.png屏幕截图
  6. adb pull 从手机上取文件
  7. adb push 电脑上文件放到手机上
  8. adb logcat 查看系统日志缓冲区信息(adb logcat -v time -s *:E > d:\logcat.txt)
  9. adb start-server 启动adb服务器
  10. adb kill-server 停止adb服务器

2.1 adb devices

用于查看pc连接了几个手机。在ubuntu云主机的桌面上右键选择在此打开终端,即可打开终端界面,输入命令即可。

当前连接了一台设备,对应阿里云手机,其127.0.0.1:10027为阿里云手机的序列号。如果连接多台设备,其序列号一定不同。

可以通过adb disconnect来断开和手机的连接,也可以通过adb connect来手动连接手机。在ubuntu云主机的桌面上右键选择在此打开终端,即可打开终端界面,输入命令即可。

真机也可以通过wifi而不是数据线连接到电脑上,通过adb connect 手机ip地址来连接。

如果是通过数据线来连接真机,需要注意以下的点:

1、检查usb调试开关是否打开。进入云手机中设置-关于手机。

连续点击版本号,打开开发者模式。进入开发者选项,就可以看到usb调试开关。

2、检查usb连接方式

usb连接方式不能是仅充电,到底选哪个需要尝试。

3、有些品牌的手机,需要安装该品牌的手机助手才能用adb连接。

2.2 adb install

用于安装被测app。

 

adb install apk文件路径复制代码

在ubuntu云主机的桌面上右键选择在此打开终端,即可打开终端界面,输入命令即可。

如果pc同时连接多部手机,需要通过-s参数来指明要安装的手机。

2.3 adb uninstall

用于卸载被测app。

 

adb uninstall 包名复制代码

包名可以在apk安装包的AndroidManifest.xml文件中查看到(/home/app/AndroidManifest.txt文件)。

也可以通过aapt工具来查看。

 

aapt d badging /home/app/kaoyanbang.apk | grep package复制代码

在ubuntu云主机的桌面上右键选择在此打开终端,即可打开终端界面,输入命令即可。

2.4 adb shell

可以进入android系统,查看到android系统的文件系统。在ubuntu云主机的桌面上右键选择在此打开终端,即可打开终端界面,输入命令即可。

输入whoami命令,可以查看当前登录的用户,如果发现不是root用户,可以退出后先运行adb root后再运行adb shell(前提条件是手机已经root过了)。

android系统中有几个文件夹比较重要:

1、/data/app目录,用来放用户安装的app的apk包。

2、/data/data目录,用来放app的安装目录,类似于windows上的program files目录。

3、/sdcard目录,扩展卡目录,用来放用户数据。

2.5 adb shell screencap

发现app的bug后,需要进行截图,可以利用android系统自带的截图工具screencap来截图。在ubuntu云主机的桌面上右键选择在此打开终端,即可打开终端界面,输入命令即可。

2.6 adb pull

将保存的截图从手机上取到电脑上。

 

adb pull 手机上文件路径 电脑上文件路径复制代码

在ubuntu云主机的桌面上右键选择在此打开终端,即可打开终端界面,输入命令即可。

2.7 adb push

主要用于将电脑上,测试用的文件到手机上。比如测试微信app需要测试发送超过100M的图片,手机上没有这种图片,就可以从电脑上传过去。

 

adb push 电脑上文件路径 手机上文件路径复制代码

在ubuntu云主机的桌面上右键选择在此打开终端,即可打开终端界面,输入命令即可。

将图片放置到手机上后,需要发送一个广播通知Android系统,图库文件有更新

 

adb shell am broadcast -a android.intent.action.MEDIA_MOUNTED -d file:///sdcard复制代码

2.8 adb logcat

测试app时发现bug,除了截图外,还需要提供运行的日志信息给开发,方便开发定位bug,尤其是闪退这种bug。

 

adb logcat -v time > /home/Desktop/logcat.txt复制代码

在ubuntu云主机的桌面上右键选择在此打开终端,即可打开终端界面,输入命令即可。

用以上的命令将logcat日志保存下来,然后对被测app进行操作,操作结束,就可以用ctrl+c来停止保存logcat日志。

保存的logcat日志需要提供给开发,用于定位bug。

logcat日志有不同的级别:

1、V,次要信息

2、I,系统信息

3、D,调试信息

4、W,警告信息

5、E,错误信息

作为测试工程师,如果想查看logcat日志,重点关注W和E级别的信息。可以在logcat日志中查询包名、exception、error、crash等关键字。

2.9 adb kill-server/adb start-server

如果要重启adb服务器,需要先kill-server,然后再start-server。

任务3:了解adb工具其它命令

【任务目标】

  • 了解adb工具在android手机整机测试中的应用。

以下命令主要用于手机整机测试。

  1. adb shell dumpsys battery 查看电池电量
  2. adb shell dumpsys wifi 查看无线网络信息
  3. adb shell dumpsys telephony.registry 查看电话相关信息 mCallState,0:表示待机状态,1:表示来电尚未接听状态,2:表示电话占线 mServiceState,0:表示正常使用状态,1:表示电话没有连接到任何电信运营网络,2:表示电话只能拨打紧急呼叫号码,3:表示电话已关机。
  4. adb bugreport 查看启动过程日志以及启动后系统状态
  5. adb shell cat /proc/cpuinfo 查看cpu相关信息
  6. adb shell cat /proc/meminfo 查看内存相关信息
  7. adb shell cat /system/build.prop 查看手机信息
  8. adb shell pm list packages 查看所有包列表信息

通过adb工具可以了解被测手机各个方面的信息。

一、adb shell dumpsys battery

status=2表示充电中,status取其它数字表示非充电中,status=5表示满电。level对应当前电量为80%。

二、adb shell dumpsys wifi

可以查看到手机连接的是哪个wifi。

三、adb shell dumpsys telephony.registry

mCallState:呼叫状态,为0表示为待机状态。

mServiceState:服务状态,为1表示没有接入任何移动网络。

四、adb bugreport

对应android手机开机日志。

总结

本课程我们主要学习了adb工具的使用,该工具主要用于android应用和android手机整机的测试,重点需要掌握的是针对android应用测试所使用到的一些常用命令。对于这些常用命令,需要记住基本的使用方式,实际工作中根据需要再去查看和使用各种参数。

?实验步骤

  • 移动app测试(一)

  • 课程概述

  • 课程环境

  • 学习收获

  • 任务1:了解什么是adb工具

  • 1.1 手机测试的内容

  • 1.2 什么是adb工具

  • 任务2:掌握adb工具常用命令

  • 2.1 adb devices

  • 2.2 adb install

  • 2.3 adb uninstall

  • 2.4 adb shell

  • 2.5 adb shell screencap

  • 2.6 adb pull

  • 2.7 adb push

  • 2.8 adb logcat

  • 2.9 adb kill-server/adb start-server

  • 任务3:了解adb工具其它命令

  • 总结

实验步骤

  移动开发 最新文章
Vue3装载axios和element-ui
android adb cmd
【xcode】Xcode常用快捷键与技巧
Android开发中的线程池使用
Java 和 Android 的 Base64
Android 测试文字编码格式
微信小程序支付
安卓权限记录
知乎之自动养号
【Android Jetpack】DataStore
上一篇文章      下一篇文章      查看所有文章
加:2022-02-09 20:49:02  更:2022-02-09 20:49:47 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/24 14:35:03-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码