移动测试6.7

移动测试:

测试程序的种类:

1、web

2、小程序

3、App

4、服务 ----推荐

移动测试的对象:

1、小程序(微信和支付宝)嵌套到专门到App

2、App

3、以浏览器的模式可以访问

m.taobao.com

兼容性测试:

每个种类需要考虑的测试点

web:

针对的不同的浏览器(主流的浏览器:Firefox,chrome,edge,safari)

app:

1、针对不同的操作系统

IOS,Android

2、不同分辨率的手机

Android系统主流的分辨率:

800x480,960x640,1280720(720p),1920*1080(1080p),25601440(2k)

3、不同厂商的手机

小米 华为.......

4、不同的网络类型

wifi 2G 3G 4G 5G

美团为例

场景: 需要测试美团这个网站   本来应该在手机浏览器  由于没有那么多的手机 需要在pc上模拟

1、进入谷歌浏览器的调试模式

m.meituan.com

然后右键 -----检查

 

 2、进入到Chrome浏览器的调试模式

  3、模拟不同的手机型号和不同的分辨率来测试小程序

 如果机型没有找到就需要添加

如何添加新的机型

  4、测试不同的网络(测试速度)

 1、如何查看耗时

 5、模拟不同的网络(设置不同的网络查看加载速度)

 弱网络:

所有的移动产品都是需要测试的,比如打开抖音,结果视频信息一直处于加载种。这个时候应该提示:请检查你的网络。

没有网络的测试:

 弱网络需要测试以下3种情况:

需要将网络连接不上、无网络、企业服务器错误等各种情况予以考虑并进行细化的测试。建议:
• 网络不稳定,没有的到服务器的反馈-->提示“网络不稳定,请稍后再试”。
• 网络没有连接-->提示“网络目前没有连接,请重新连接网络之后再尝试”。
• 企业服务器或者第三方服务因未知原因出错-->提示“目前无法接收相关数据,我们正在调查,请稍后再试”。

功能测试点:

1、权限操作

2、手机的操作习惯

Home 键  返回键 声音的调整

3、数据保留

4、App的安装与卸载

这个针对不同的操作系统,有不同的操作

针对Android:

开发会给测试一个apk的文件,测试使用adb install apk命令来进行安装 

针对IOS:

A、首先需要把苹果的测试手机序列号告诉给开发‘

B、在测试手机下载testflight 的App

C、开发会把测试的app发布到testflight,然后我们通过testflight来安装被测试的app

应用安装之后,还要重点查看以下几点:

• 不联网的情况下是否能正常运行,会不会崩溃?

• 在线下载数据不完整,能否再次启动?

• 是否支持断点续传?

• 下载完整之后,再次启动。

• 安装成功后,检查版本号以及相关数据。

增量升级

增量升级也叫做差分升级(Smart APP update)。

优点:用户不必再下载一个完整的Apk进行安装。

缺点:不需对发布的所有旧版本和最新版本做差分,很麻烦;如果一部分系统没有拿到内置应用的权限,那么就没有办法进行增量升级。

稳定性测试:

app:就是常时间的针对APP进行各种操作和交互的操作,来验证APP是否闪退,崩溃的情况

服务:常时间对服务发送大量的请求,来验证服务是否可以返回客户端想要的数据

普遍的apk性能测试,主要是以下七类

1、响应

2、内存

3、cpu

4、FPS (app使用的流畅度)

5、GPU过度渲染 (手机加载资源的过程)

6、耗电

7、耗流

adb简介:

即 Android Debug Bridge,它是 Android 开发/测试人员的强大工具。它是一种可以用来操作手机设备或模拟器的命令行工具。

在操作它之前我们需要验证下:我们搭建的android环境  android -h            adb

通过USB连接到手机设备的操作步骤

(OPPO手机为例)

1、进入手机「设置 > 关于手机 > 版本信息 > 版本号」连续点击版本号,(输入锁屏密码),即可打开开发者模式。

2、进入手机「设置 > 其他设置 > 开发者选项」,可关闭开发者模式

3、插入USB线

4、在控制台输入adb devices

 全球三大操作系统:

windows:

unix:ios,macos ,高端的小型服务器

linux:是在unix的思想延伸下开发的一个操作系统

        android

        redhat

手机测试软件的场景(Android系统的为例):

开发者写好代码打包成apk文件  我们这边安装到手机上   然后开始测试

apk 的安装

1、控制台进入到需要安装程序的目录(这里放在了桌面)

cd  Desktop

2、安装app:

第一种: adb install [APK路径]

adb install com.parkingwang.app.apk

第二种:adb install -r [APK路径]

adb install -r com.parkingwang.app.apk

3、手机点击确认安装按钮

 apk 的卸载

adb uninstall [应用包名]

获取应用程序包名的3种方式

获取包名的第一种方式:

1、控制台输入命令

adb shell am monitor

2、手机打开需要卸载的应用(app)

 获取包名的第二种方式:

1、打开手机应用程序

2、控制台输入命令

adb shell dumpsys window | findstr mCurrentFocus

 获取包名的第三种方式:

1、进入到Android系统的shell模式

adb shell

2、输入命令(获取所有的命令)

pm list packages

一个完整的卸载案例

卸载逻辑:

1、先使用adb shell am monitor等命令获取被卸载的程序包名

2、使用adb uninstall 包名来进行卸载

 常见的错误日志

空指针:nullpointException

数组越界:ArrayIndexoutof boundsException

多次启动线程:illegalThreadstateException

数字格式化问题 :java.lang.NumberFormatException

内存溢出:java.lang.OutOfMemoryError(超过设定的最大内存数)

发现不了这个文件:java.io.FileNotFoundException

初始化的错误:java.long.InstantiationException

发现不了这个类:java.lang.ClassNotFoundException

错误搜索优先级:

Crash(严重的) > AndroidRuntime(严重崩溃的一种) > Exception>Error 的顺序逐个搜索

android命令:

adb shell:进入 Android 系统的 shell 模式

进入shell模式后可以用以下3个命令测试下 (由于Android是在Linux基础上进行二次开发的所以它的测试命令也就是Liunx命令)

date:查看当前时间

ls:查看当前目录下的所有文件

ls -h :查看当前目录下的所有文件的大小

 

 

adb shell wm size # 查看屏幕分辨率

 

 

 adb shell service list # 显示当前运行的系统服务

 

 

 adb shell dumpsys activity top # 显示当前最前端的 Activity

 

 

 adb shell cat /proc/cpuinfo # 显示设备的CPU信息

 

 

 adb shell cat /proc/meminfo # 显示设备的内存使用情况

 

 

 adb shell ps | findstr parkingwang

获取停车王的详细记录 重点查看下pid

 

 

 adb shell dumpsys meminfo 19562

获取内存信息

 

 

 adb shell top -n 1 | findstr 19562

获取cpu消耗信息

获取cpu消耗信息

adb shell dumpsys battery

获取电量信息

 

 

 获取GPU信息

adb shell dumpsys gfxinfo 进程ID

 

 

 获取pid

adb shell ps | findstr com.parkingwang.app

获取流量信息

adb shell cat /proc/19562/net/dev

 

 

 

 

 adb logcat(查看(监听)日志)查看所有的日志

2个过滤的方法

1、adb logcat | findstr "weibo"

2、adb logcat | findstr "com.sina.weibo"

只过滤查看某个具体package的错误信息

 

 

 重定向定义:

把错误的日志写到一个记事本里面,然后在记事本里面通过关键字的搜索来查询错误信息。把错误日志信息写到其他的文件,这个过程就叫重定向

重定向(查找错误日志)的操作步骤:

1、在XX的目录下创建log.txt的记事本

2、adb logcat > log.txt,然后按下回车键

3、启动app,进行操作

4、操作完成,打开log.txt,里面会有很多的日志信息

 

 

 衍生的面试题:

假设你被测试的app闪退了,此时你会怎么办?

1、再次执行之前出问题的操作步骤

2、执行操作步骤的时候,监听日志信息,这样下次闪退的时候,我们就能够获取到闪退的错误日志

3、把获取到的错误日志反馈给开发

 

posted @   净植  阅读(47)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 单线程的Redis速度为什么快?
· SQL Server 2025 AI相关能力初探
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?
· 展开说说关于C#中ORM框架的用法!
点击右上角即可分享
微信分享提示