[软件测试][Android测试环境的搭建][学习笔记]

举报
John2021 发表于 2022/09/08 07:46:23 2022/09/08
【摘要】 1.Android测试常用术语 1.1.系统碎片化通俗指整个Android平台差异化越来越大。 1.2.屏幕尺寸屏幕对角线的长度。(英寸) 1.3.分辨率分辨率(屏幕分辨率)是屏幕图像的精密度,是指显示器所能显示的像素有多少。由于屏幕上的点、线和面都是由像素组成的,显示器可显示的像素越多,画面就越精细,同样的屏幕区域内能显示的信息也就越多,所以分辨率是个非常重要的性能指标之一。 1.4.像...

1.Android测试常用术语

1.1.系统碎片化

  • 通俗指整个Android平台差异化越来越大。

1.2.屏幕尺寸

  • 屏幕对角线的长度。(英寸)

1.3.分辨率

  • 分辨率(屏幕分辨率)是屏幕图像的精密度,是指显示器所能显示的像素有多少。
  • 由于屏幕上的点、线和面都是由像素组成的,显示器可显示的像素越多,画面就越精细,同样的屏幕区域内能显示的信息也就越多,所以分辨率是个非常重要的性能指标之一。

1.4.像素

  • 像素是指由图像的小方格组成的,这些小方格都有一个明确的位置和被分配的色彩数值,小方格颜色和位置就决定该图像所呈现出来的样子。
  • 可以将像素视为整个图像中不可分割的单位或者是元素。
  • px(pixels)像素。
  • dip或dp(device independent pixels)设备独立像素。
  • sp(scaled pixels - best for text size)比例像素。

1.5.网络制式

  • 手机网络制式主要包括GSM、CDMA、3G、4G、5G五种。

2.Android应用的构成

2.1.Android的四大组件

  • 构成Android应用程序的基本架构,分别时:活动(Activity)、服务(Service)、广播接收器(BroadcastReceiver)、内容提供者(Content Provider)。

2.2.Activity

  • Activity从字面上的意思理解是活动行动的意思,在Android中,activity指与用户交互的界面,从你打开一个Android应用所见到的第一个页面,就是一个activity。
  • activity作为一个可见的页面,给用户以良好的体验很重要,所以布局的漂亮与否决定一个应用用户体验。

2.3.Service

  • Android下的服务是在后台运行,也是没有界面,一旦启动就会在后台运行,直到手机关机为止。
  • 比如:用户可以使用QQ音乐在后台进行音乐播放,虽然退出了操作界面但是还在正常运行。
  • service承担着大部分的数据处理工作。

2.4.ContentProvider

  • Android平台提供了content provider使一个程序的指定数据集提供给其他应用程序。
  • 可以理解为是一个特殊的数据库,主要是用来存取数据。

注意:contentprovider = 中间者角色(搬运工),真正存储和操作数据的数据源还是原来存储数据的方式(数据库、文件、xml或者网络)。

2.5.BroadcastReceiver

  • 主要用于接收系统或者app发送的广播事件。
  • 广播:发送消息和接收消息。

原理描述:
1,广播接收者,通过binder机制在ams注册。
2,广播发送者,通过binder机制向ams发送广播。
3,ams根据广播发送者要求。在已注册列表中,寻找合适的广播接收者。
4,ams将广播发送到合适的广播接收者相应的消息循环队列中。
5,广播接收者通过消息循环拿到此广播,并回调onReceive()。
注意:广播发送者和广播接收者的执行是异步的,即广播发送者不会关心有无接收者接收,也不确定接收者何时才能接收到。

3.Android测试环境搭建

所有的移动端app的测试,都是C/S或者B/S。移动端就是客户端。所有数据都需要和服务端交互。服务器环境的配置和搭建与app测试的环境没有直接关系。一般所说的app的测试环境特指app运行所需的硬件、网络、及其它相关的app。

3.1.真机测试环境

最直接的方式就是使用真机进行测试。

3.2.第三方模拟器测试

一般日常学习使用的话比较推荐这种方式,可以不需要真机进行学习测试,下载来源丰富,网络不受影响。

3.3.Android自带的模拟器测试

官方资源,需要搭建Android开发环境,由于网络原因会给查找下载造成不便。

3.4.Android测试环境搭建

这里选用第三方模拟器作为示例。

  1. 在第三方模拟器官网下载安装文件。
  2. 完成模拟器的安装。
  3. 将模拟器安装文件夹下的bin目录路径添加到系统的PATH里面。
  4. 确认adb已经安装成功,在命令提示符中输入adb version。如提示:Android Debug Bridge表示成功。
  5. 确认aapt已经安装成功,在命令提示符中输入aapt。如提示:Android Asset Packaging Tool表示成功。
  6. 确认monkey已经安装成功,在命令提示符中输入adb shell monkey 1。如提示:Events injected: 1表示成功。

4.ADB

4.1.ADB简介

adb工具即Android Debug Bridge(安卓调试桥)tools。就是一个命令行窗口,用于通过电脑端与模拟器或者真实设备交互。包括三大内容:

  • 电脑上运行的客户端。
  • 在你用于开发的机器上作为后台进程运行的服务器。
  • 一个以后台进程的形式运行于模拟器或设备上的守护进程(daemon)。

4.2.常用ADB命令

4.2.1.关闭和启动adb服务

  • adb kill-server 关闭ADB服务
  • adb start-server 启动ADB服务

4.2.2.查看设备连接情况

  • adb devices
  • 查看当前连接的设备,连接到计算机的Android设备或者模拟器将会列表显示
  • 输出信息格式为:[serialNumber] [state]

4.2.3.安装和卸载APK

  • adb install <apk文件路径>
  • adb uninstall <软件名字>
  • adb uninstall -k <软件名字>,卸载程序但是保留其配置和缓存文件
  • 指定设备进行操作
    • 当有多个设备连接时,可以用下面的命令来直接选择执行命令的设备
    • adb [-d|-e|-s <serial Number>] <command>
      • d:真机(多个设备中只有一个真机时适用)
      • e:模拟器(多个设备中只有一个模拟器时适用)
      • s:序列号
  • 列出当前设备上的程序包
    • adb shell pm list packages - 查看设备中所有已安装程序
    • adb shell pm list packages -s - 查看设备中系统安装的程序
    • adb shell pm list packages -3 - 列出第三方安装的程序

4.2.4.上传和下载文件

  • adb push <本地路径> <远程路径>
    • 把pc上的文件或文件夹上传到设备
  • adb pull <远程路径> <本地路径>
    • 把设备上的文件或文件夹下载的pc

4.2.5.日志Logcat的操作

  • adb logcat ,在命令行中显示调试信息。
  • adb logcat > 文件名 ,将logcat信息保存在文件中。
  • 过滤器表达式的格式是tag:priority
  • 例如,adb logcat ActivityManager:| *:S
  • 标记是一个简短的字符串,用于标识原始消息的来源(例如"View"来源于显示系统)
  • 优先级是下面的字符,顺序是从低到高:
    • V - 明细(最低优先级)
    • D - 调试
    • I - 信息
    • W - 警告
    • E - 错误
    • F - 严重错误
    • S - 无记载(最高优先级,没有什么会被记载)
  • 控制日志的格式
    • 日志消息在标记和优先级之外还有很多元数据字段,这些字段可以通过修改输出格式来控制输出结果,-v选项上加上下面列出的内容可以控制输出字段,比如:
    • adb logcat - v thread
    • brief - 显示优先级/标记和原始进程的PID(默认格式)
    • process - 仅显示进程PID
    • tag - 仅显示优先级/标记
    • thread - 仅显示进程:线程和优先级/标记
    • raw - 显示原始的日志信息,没有其他的元数据字段
    • time - 显示日期,调用日期,优先级/标记,PID
    • long - 显示所有的元数据字段并且用空行分隔消息内容。

其他命令

  • Android - 启动SDK管理器
  • adb bugreport - 查看bug报告
  • adb get-serialno - 获取设备的序列号
  • adb root - 获得root权限
  • adb remount - 将system分区从只读变成可读可写(需要ROOT权限)
  • android list targets - 显示系统内所有的Android平台
  • android list avd - 显示系统中所有模拟器
  • ddms - 启动ddms
  • adb reboot - 重启
  • dmesg - 打印出内核的调试信息
【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。