移动测试
移动测试
测试的程序
1 WEB
2 小程序
3 APP
4 服务
移动测试对象:
1、小程序(微信和支付宝)嵌套到专门到App
2、App
3、以浏览器的模式可以访问
兼容性测试: WEB:Firefox,chrome,edge,safari APP:IOS,AndroidAPP:
1、不同版本的操作系统
2、不同分辨率的手机
3、不同厂商的手机 伪造不同手机进行测试
4、不同的网络类型(2-5 怎么查看耗时network clear 刷新模拟不同网络类型弱网络:
对美团测试
1)打开浏览器,输入网址m.meituan.com进入美团的H5小程序;
(2)打开浏览器的检查,选择手机模式;

 
查看APP响应耗时

 
不同手机型号进行测试

 
测试不同的网络环境

 
所有的移动产品都是需要测试的,比如打开抖音,结果视频信息一致处于加载中。这个时候应该提示:请检查你的网络。需要将网络连接不上、无网络、企业服务器错误等各种情况予以考虑并进行细化的测试。建议: • 网络不稳定,没有的到服务器的反馈-->提示“网络不稳定,请稍后再试”。 • 网络没有连接-->提示“网络目前没有连接,请重新连接网络之后再尝试”。 • 企业服务器或者第三方服务因未知原因出错-->提示“目前无法接收相关数据,我们正在调查,请稍后再试”。 android分辨率 800x480, 960x640,1280720(720p),1920*1080(1080p),25601440(2k)
功能测试点:
1、权限测试(比如地址等权限)
2、手机的操作习惯 Home键、返回键,声音的调整
3、数据保留
4、APP的安装与卸载
热修复 android:开发会给测试一个apk的文件,测试使用adb install apk命令来进行安装 ios
: A、首先把苹果的测试手机序列号告诉开发
B、在测试手机下载testflight的App
C、开发会把测试的app发布到testflight,然后我们通过testflight来安装被测试的app
issue:生产环境出现的问题,需要提单,开发说提交一个issue 那么针对该issue需要立刻马上解决,紧急发布叫hotfix版本来修复该issus
应用安装之后,还要重点查看以下几点:
• 不联网的情况下是否能正常运行,会不会崩溃?
• 在线下载数据不完整,能否再次启动? • 是否支持断点续传?
• 下载完整之后,再次启动。 • 安装成功后,检查版本号以及相关数据
增量升级 增量升级也叫做差分升级(Smart APP update)。 优点:用户不必再下载一个完整的Apk进行安装。 缺点:不需对发布的所有旧版本和最新版本做差分,很麻烦;如果一部分系统没有拿到内置应用的权限,那么就没有办法进行增量升级。
稳定性测试: app:就是常时间的针对APP进行各种操作和交互的操作,来验证APP是否闪退,崩溃的情况 服务:常时间对服务发送大量的请求,来验证服务是否可以返回客户端想要的数据
搭建nodejs环境

 
 
 
 
搭建ANDroid环境;
下载安装包
(1)下载android-sdk-windows.rar压缩包

(3)进入环境变量,新增系统变量,点击新建,变量名为:ANDROID_HOME,变量值为进入android-sdk-windows.rar解压文件的目录下,然后复制目录;
   
(4)新增PATH系统变量的值,找到PATH点击编辑,进入后点击新建,添加变量值:
%ANDROID_HOME%\platform-tools
%ANDROID_HOME%\tools

普遍的apk性能测试,主要是以下七类
1、响应
2、内存
3、cpu
4、FPS (app使用的流畅度)
5、GPU过度渲染
6、耗电
7、耗流
adb,即 Android Debug Bridge,它是 Android 开发/测试人员的强大工具。它是一种可以用来操作手机设备或模拟器的命令行工具。
开发者权限打开 • 打开设置 • 搜索关于手机 • 在关于手机中点击7次 • 系统管理里面看到开发者选项 • 开启开发者选项和USB调试
1 adb devices测试连接命令
2 cd desktop进入目录
3 adb install [APK路径]安装命令
4 adb shell am monitor,然后打开app,就会获取程序的应用包名
5 abd uninstall+应用包名卸载命令

adb logcat | findstr "parkingwang" 在任务台显示特定日志

adb logcat > log.txt
 
空指针:nullpointException 数组越界:ArrayIndexoutof boundsException
多次启动线程:illegalThreadstateException
数字格式化问题 :java.lang.NumberFormatException
内存溢出:java.lang.OutOfMemoryError
Crash > AndroidRuntime > Exception>Error 的顺序逐个搜索。
adb shell wm size # 查看屏幕分辨率
adb shell service list # 显示当前运行的系统服务
adb shell dumpsys activity top # 显示当前最前端的 Activity
场景描述: 假设你被测试的app闪退了,此时你会怎么办?
1、再次执行之前出问题的操作步骤
2、执行操作步骤的时候,监听日志信息,这样下次闪退的时候,我们就能够获取到闪退的错误日志
3、把获取到的错误日志反馈给开发
把错误的日志写到一个记事本里面,然后在记事本里面通过关键字的搜索来查询错误信息。把日志信息写到其他的文件,这个过程叫重定向。重定向的操作步骤:
1、在XX的目录下创建log.txt的记事本

2、adb logcat > log.txt,然后按下回车键
3、启动app,进行操作
4、操作完成,打开log.txt,里面会有很多的日志信息
java.io.FileNotFoundException 发现不了文件

Didn't find class 发现不了这个类
Crash > AndroidRuntime > Exception>Error 的顺序逐个搜索。
crash崩溃 crash,即崩溃,anr是crash的一种。在程序中可能会出现你未捕获到的异常,这就造成了崩溃。
adb shell cat /proc/cpuinfo # 显示设备的CPU信息 adb shell cat /proc/meminfo # 显示设备的内存使用情况
在app中,测试app的ANR和CRASH,使用的是monkey,来测试它的稳定性。
使用monkey的目的是测试app的稳定性,验证是否存在ANR和CRASH的错误,使用Monkey可以操作很多很多的交互式的操作,比如旋转。。。
查询monkey的pid adb shell ps | grep monkey adb shell kill pid
查询所有进程:adb shell ps 查询具体的进程:adb shell ps | grep monkey 杀掉进程:adb shell kill pid
adb shell ps | findstr parkingwang
获取内存信息 adb shell dumpsys meminfo 19606

获取cpu消耗信息 adb shell top -n 1 | findstr 6672

电量信息

获取流量信息 adb shell cat /proc/pid/net/dev**

1 adb devices测试连接命令
3 adb install [APK路径]安装命令
4 adb shell am monitor,然后打开app,就会获取程序的应用包名
5 查 pid adb shell ps | findstr parkingwang 过程中打开软件
6 adb logcat | findstr "parkingwang" 在任务台显示特定日志
7 桌面新建记事本命名log,txt
8 adb logcat > log.txt
9 adb uninstall+应用包名卸载命令**
adb logcat | findstr tv.danmaku.bili ogcat > log.txt**

指定的软件重复测试 adb shell monkey -p com.parkingwang.business --pct-touch 40 --pct-motion 25 --pct-appswitch 10 --pct-rotation 5 -s 12358 --throttle 200 --ignore-crashes --ignore-timeouts -v 80000>D:\专项测试\log.txt
 
 
app稳定性测试你觉得有必要测试嘛你是怎么理解app的稳定性测试的? ** monkey是干什么的?**
monkey来主要测试app的稳定性,app的稳定性主要指的是app在各种交互操作以及长时间的操作下app出现闪退,崩溃,卡死,无响应等情况。那么使用monkey来测试app在交互操作过程中出现崩溃,闪退,卡死的具体原因。
执行细节: monkey执行后,把错误日志写到一个文件里面,然后通过批处理来分析日志文件里面的错误信息,主要是通过关键字(NAR CRASH anr crash)
adb常用的命令: adb是什么?
是android debug brigdge
adb install apk 安装
adb uninstall package卸载
adb logcat
场景: 测试app的过程中,出现了闪退,此时你会?
1、截屏/录频记录下闪退的交互
2、同样的操作操作的时候,使用adb logcat | grep package > log.txt,把错误日志信息重定向到日志文件里面
3、把录频的交互操作以及错误的日志信息,反馈给开发
web测试与app测试的区别?
1、不同平台的交互是不一样的
2、兼容性 web:chrome,firefox,edge,safari app:
1、不同操作系统以及不同的版本
2、不同的厂商以及不同的分辨率以及不同的手机型号
3、不同的网络情况
3、安装卸载
4、稳定性测试,防止崩溃以及卡死
5、app的专项测试,比如app占用了多少流量,多少内存,多少cpu
移动测试方向:
1、客户端的专项测试,就需要非常熟悉android的源码以及ios的源码,以及内部架构
2、移动端的自动化测试:appium
3、手机终端的测试,比如测试相机
4、app的常规的功能测试
 
                     
                    
                 
                    
                 
                
            
         
         浙公网安备 33010602011771号
浙公网安备 33010602011771号