移动端app专项测试

学习目标:app专项测试知识点,其他知识扩充

一、app专项(app怎么测试/app侧重点在哪)

        1.功能:

                跟前面功能测试一样(跟需求文档提取测试点,编写测试用例)

        2.安装

                1.不同品牌安装,不同操作系统,不同分辨率

                2.安装后是否可以正常使用

                3.空间不足是否有提示

                4.是否可以重复安装(低版本覆盖高版本,同版本覆盖,高覆盖低版本)

                5.电量不足是否有提示

                6.是否可以第三方平台安装

                7.安装是否有进度条提示或者已用时间或者剩余时间提示

        3.卸载

                1.不同品牌安装,不同操作系统,不同分辨率

                2.卸载时是否有提示

                3.卸载是否有进度提示

                4.正在使用的app,卸载是否有提示

                5.是否可以通过安装目录的文件删除卸载

                6.卸载后已经安装的文件是否卸载干净

                7.是否可以通过第三方平台卸载

                8.正在卸载时,取消卸载,app是否可用

        4、升级

                1.升级时是否有提示,提示语是否正确

                2.是否为强制升级,如果不升级是否可以正常使用

                3.升级时直接升到最新版本,还是按顺序升级

                4.当天不升级,下次使用是否还有升级提示

                5.切换网络后,升级是否有提醒

                6.升级到一半,不升级,下次是重新升级还是从记录开始升级

                7.低版本覆盖高版本,同版本覆盖,高覆盖低版本

                8.不同品牌安装,不同操作系统,不同分辨率

                9.升级后功能要能正常使用

                10.升级后旧数据还正常使用

        5、兼容性

                1、不同品牌

                        苹果:16、17.等等

                        安卓:华为系列、小米系列、荣耀系列、oppo系列

                2、不同操作系统

                        1、android

                        2、鸿蒙

                        3、ios

                3、不同分辨率

                        1920*1080 , 2k(2560*1440) 4k(3840*2160)

                4、不同尺寸

                       5.x ,6.x 

                5.不同网络兼容

                        2G,3G,4G,5G,wifi

                6.权限兼容

                        安装时,是否有获取获取权限提醒...

                7.兼容新旧数据

                8.兼容蓝牙,摄像头,定位打卡等等

                说明:为了更好的兼容性测试,我们需要去云平台进行兼容性测试

        6、用户体验

                1.是否美观

                2.是否有错别字,色彩搭配是否合理,布局是否合理

                3.文字大小是否合理

                4.是否容易操作(通俗易懂)

                5.是否有新手引导

                6.是否使用教程

                7.是否有适用不同阶段年龄的模式

                8.是否本地化语言

                9.是否有聚焦到第一个输入框的功能

                10.是否有快捷键操作

        7、交叉事件(冲突、中断)

                正在做一件事情,被另外一件事情干扰

                比如:我在看抖音,你给我发给信息

        8、网络测试

                1.正常网络测试

                        2,3,4,5G,wifi

                2.弱网测试

                        目的:在网络不稳定的情况下是否工作正常,是否有提示,是否会报错...

                3.无网络测试

        9、时间测试

                使用服务器时间

        10、安全测试

                1.连续错误操作限制

                2.防止SQL注入

                3.敏感内容是否脱敏: 13838****5438

        11、垃圾回收(内存测试泄漏)——Android app

                 内存泄漏:越来越卡

                 内存溢出:

                        在日志中提示OOM(out of memory),比如:打开某个游戏App需要3G内存,但是手机只能提供1G内存

                监控内存泄漏

                        1、监测工具:ddms

                                在cdm中输入ddms,打开抓包工具,选择想要监测软件的包名,show head      updates,选择vm heap,点击cause Gc,观察date object行里的toai size,如果数据变大,存在内存泄漏

                        重复点击:adb shell monkey -p com.example.com.boweifeng.xx -v 3

                                2、指令监控

                                adb shell dumpsys meninfo com.android.settings+包名

    注意:只会变大不会缩小,存在内存泄漏   12、消息推送(push推送)

        1.内容是否正确

        2.内容格式是否正确

        3.是否可以指定人员推送

        4.点击消息是否可以打开app

        5.设置不接收推送,不能收到

        13、前后台切换

                1.app是否会崩溃

                2.是否会跳转到下一步或者上一步

二、稳定性测试(疲劳性测试,app性能测试)

        1、monkey是什么

                是一个无规则点击操作的工具

                需求:企业可能要求测试人员对app连续操作2 小时点击

        2、优缺点

                优点:长时间连续操作,使用简单

                缺点:步骤控制

        3、基本命令

                adb shell monkey -p+包名 -v 次数

        4、稳定性/疲劳测试/app性能怎么做

                1、安装被测应用

                        adb install

                2、安装性能监控工具itest,启动性能监控工具

                        监控性能指标,关注什么:cpu、pss内存、上传流量、下载流量、cpu时间

           

                3、清空多余日志

                        adb logcat -c

                4、获取app的日志保存到本地

                        adb logcat -v time > 文件路径+文件名

                        adb logcat -v time > C:\Users\admin\app.log

                        

                5、运行monkey命令保存日志到本地

                        adb shell monkey -p  包名 -v 次数 >C:\Users\admin(文件路径)

         

        5.结果分析

               1、 查看性能资源

      

     

  •         2、查看app日志(可以发现是否有问题)
    • 3、先搜索anr in (application not responding 应用无响应) ,能搜索到表示app发生
              4、无响应,然后把日志下载下来截图给开发,如果搜索不到则继续搜索
              5、nullpointerexception(空指针异常 , 表示xxx崩溃crash),如果搜索到前后截图给开发

    6、接口分析

                       1、具体讲app稳定性当时发生什么问题

                                发生过无响应

                                当时在日志中搜索anr in,可以搜索到,然后日志显示是在登录界面的注册按钮发现无响应

        7、monkey如何做回归测试

                 使用上一次monkey产生的seed进行回归测试即可

                怎么找到seed

                  找到monkey命令保存到本地的日志,打开日志,找到:Monkey:seed=

                adb shell monkey -p 包名 -s seed -v 次数

        8、怎么样保证monkey一定跑完

                说明:上面指令,只有app发生了日常,比如:无响应,monkey就会停止

                需求:无论如何都要跑完

                adb shell monkey -p 包名 -s seed --ignore-crashes --ignore-timeouts --ignore-                security-exceptions  -v 次数

                --ignore-crashes:忽略崩溃

                --ignore-timeouts:忽略无响应

                --ignore-security-exceptions:忽略安全许可

        9、上面的指令在工作上存在一些问题

                上面指令是有多快跑多快,跟我们真实情况有出入

                如何才能接近人类操作

                加入延迟指令

                --throttle +毫秒

                adb shell monkey -p 包名 -s seed --ignore-crashes --ignore-timeouts --ignore-                security-exceptions  --throttle -v 次数

        10、上面的指令在工作上存在一些问题

                上面的指令对所有的指令对所有类型的app,操作都是一样的,不同类型的app,操作占比

        11、停止正在运行的monkey

                1、直接关设备
                2、指令停止

                        先进入linux命令

                        

                        查找monkey的进程号

                                

                        杀死monkey的进程号

                        

        12、影响app启动的时间

                1、网络

                2、设备配置低

                3、加载视频、图片过大

                4、服务器配置低

                5、多人同时使用

        13、app闪退/nullpointerexception(崩溃,crash)/无响应(anr)的原因

                1、兼容性

                2、cpu、内存满了

                3、网络不稳定

                4、缓存数据过多

                5、设备过热发烫

        14、android跟ios测试区别

                1、android版本多,ios少

                2、android手机品牌多,ios少

                3、android系统可升可降,ios只升不降

                4、android发布平台多审核不严,iOS发布平台少且审核严格

                5、android的app在后台是真运行,ios的app在后台是休眠

            15、沙盒/沙箱测试

                实现技术

                虚拟机

                docker

                16、app性能测试关注什么

                        app性能指标怎么来的

                        1、产品经理跟客户沟通

                        2、借助旧版本需求指标

                        3、参考竞品

                17、app的四大组件

                        1、窗口activity

                        作用:提供可视化界面

                        2、服务service

                        作用:提供后台运行服务

                        3、广播接收者Broadcastreceiver

                        作用:监听数据的变化然后做出相应的改变,比如:手机电量低于20%,广播接收者监听到这个数据低于20%,做出电量图标更改为红色

                        4、内容提供者contentprovider

                        作用:给其他app提供访问的数据。比如:手机上的通讯录可以为多个app提供访问渠道

                18、如何设置monkey运行8小时

                说明:monkey不能设定时长

三、抓取app数据

        查看端口是否被占用:netstat -ano | findstr 端口

四、弱网测试

        1、为什么做弱网测试

                 查看app或网页在网络很差的情况下是否能正常工作

        2、弱网测试实现

                        工具:fiddler,charles,Qnet

                        

                        

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如若转载,请注明出处:http://www.pswp.cn/news/918103.shtml
繁体地址,请注明出处:http://hk.pswp.cn/news/918103.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Spring Boot 结合 CORS 解决前端跨域问题

Spring Boot 结合 CORS 解决前端跨域问题 1. 背景 在前后端分离的项目中,前端(例如 http://localhost:3000)调用后端接口(例如 http://localhost:8080)时,浏览器会因为 同源策略 限制而阻止请求&#xff0c…

GPT-5 发布:微小进步难掩瓶颈,AI 行业或迎冷静

北京时间 8 月 8 日凌晨,OpenAI 的 GPT-5 在万众期待中登场。距离 GPT-4 发布已过去两年半,然而这场发布会却未重现 ChatGPT 初现时的惊艳,也没有 GPT-4 的跨越式升级,更无 o1 发布时的震撼。1 小时 20 分钟的发布会,充斥着不惊艳的测试数据、与竞品难分高下的用例展示,甚…

僵尸进程、孤儿进程、进程优先级、/proc 文件系统、CRC 与网络溢出问题处理(实战 + 原理)

僵尸进程 / 孤儿进程:是什么、为什么会出现、如何定位与清理进程优先级:nice/priority、CFS 与实时调度、I/O 优先级、cgroup 限流/proc 文件系统:最常用路径与诊断手法CRC 校验:在存储/网络里的作用与局限、抓包“校验错误”的常…

GPT-5 不仅是版本升级,它标志着 推理能力的商业化 和 Agent操作系统 的崛起,开启了 AI革命时代。

GPT-5 不仅是版本升级,它标志着 推理能力的商业化 和 Agent操作系统 的崛起,开启了 AI革命时代。 核心技术亮点: 商业化推理能力:AI不仅生成文本,还能 自动解决复杂任务,提升工作效率。 Agent操作系统&…

【C#】掌握并发利器:深入理解 .NET 中的 Task.WhenAll

在现代 .NET 应用程序开发中,异步编程(Asynchronous Programming)已成为提升性能、改善响应能力和充分利用多核处理器的关键技术。async 和 await 关键字极大地简化了异步代码的编写,而 Task 类则是这一模型的核心。在处理多个并发…

微型导轨在半导体制造中有哪些高精密应用场景?

微型导轨在半导体制造中用于晶圆对准和定位系统,确保晶圆在光刻、蚀刻等工艺中精确移动。其高精度、高刚性、低摩擦和紧凑设计等特性,使其成为半导体设备实现微米级运动控制的核心部件。光刻机:在光刻工艺中,微型导轨支撑并引导掩…

全栈:Tomcat 安装教程

Tomcat 安装教程 安装 Tomcat 的步骤因操作系统而异,以下是 Windows、Linux 和 Mac 系统的详细安装方法: 一、Windows 系统安装 Tomcat 下载 Tomcat 访问 Tomcat 官方网站(http://tomcat.apache.org/),选择适合的版本…

数据分析——Pandas库

Pandas是Python生态系统中最强大、最流行的数据分析库,专为处理结构化数据(如表格和时间序列)而设计。它提供了高效的数据结构和丰富的功能,使得数据清洗、转换、分析和可视化变得简单直观。一、Pandas库的安装详解1. 安装前的准备…

数据结构-哈希表(散列表)

1.基本概念哈希表(散列表):提高数据的查找效率哈希存储:将要存储的数据的关键字和存储位置之间,建立起对应的关系, 这个关系称之为哈希函数。存储数据时,通过对应的哈希函数可以将数据映射到指定…

如何在Vue中使用拓扑图功能

前言 该组件基于 Vue.js 和 AntV G6 构建项目特色功能 1. 丰富的节点图标支持 本拓扑图系统的最大特色是支持使用自定义图片作为节点图标 2. 智能的力导向布局 系统采用力导向布局算法,能够自动优化节点位置,避免重叠,形成美观的网络拓扑结构…

基于dynamic的Druid 与 HikariCP 连接池集成配置区别

你提供的内容是关于 ​​dynamic-datasource-spring-boot-starter​​ 的详细介绍,这是一个非常实用的 ​​Spring Boot 多数据源动态切换组件​​,适用于需要在单个应用中连接多个数据库并灵活切换数据源的场景。下面我为你梳理一下该组件的核心信息与使…

算法训练之栈

♥♥♥~~~~~~欢迎光临知星小度博客空间~~~~~~♥♥♥ ♥♥♥零星地变得优秀~也能拼凑出星河~♥♥♥ ♥♥♥我们一起努力成为更好的自己~♥♥♥ ♥♥♥如果这一篇博客对你有帮助~别忘了点赞分享哦~♥♥♥ ♥♥♥如果有什么问题可以评论区留言或者私信我哦~♥♥♥ ✨✨✨✨✨✨个人…

OpenAI 最新开源模型 gpt-oss (Windows + Ollama/ubuntu)本地部署详细教程

OpenAI 最近发布了其首个开源的开放权重模型gpt-oss,这在AI圈引起了巨大的轰动。对于广大开发者和AI爱好者来说,这意味着我们终于可以在自己的机器上,完全本地化地运行和探索这款强大的模型了。 本教程将一步一步指导你如何在Windows系统上&…

在X86架构Linux中创建虚拟根目录并下载指定架构(如aarch64)的软件包(含依赖)

在X86架构Linux中创建虚拟根目录并下载指定架构(如aarch64)的软件包(含依赖) 在Linux系统中,有时候我们需要在特定的环境或架构下安装软件包,而不影响主系统。一种常见的方法是创建一个虚拟的根目录,并在此环境中操作。本文将介绍如何通过创建…

scratch笔记和练习-第9课:一起来绘画

位图也称为点阵图,它是由许许多多的点组成的,这些点被称为像素。位图图像可以表现丰富的多彩变化 并产生逼真的效果,很容易在不同软件之间交换使用, 但它在保存图像时需要记录每一个像素的色彩信息,所以占用的存储空间…

[linux] Linux:一条指令更新DDNS

Linux:一条指令更新DDNS 在动态IP环境下,如何确保我们的域名始终指向正确的公网IP地址?动态DNS(DDNS)服务为我们提供了完美的解决方案。今天,我将分享一个简洁高效的Linux命令行指令,用于自动更…

[激光原理与应用-182]:测量仪器 - 光束型 - 光束质量分析仪

光束质量分析仪是用于精确评估激光光束特性的核心设备,通过测量光束的强度分布、相位分布、发散角等参数,为激光系统的优化、加工工艺控制及科研实验提供关键数据支持。以下是光束质量分析仪的详细解析:一、核心功能 - 光束强度分布分析测量内…

Linux 限制 root 登录 IP 地址的方法

Linux 限制 root 登录 IP 地址的方法Linux 限制 root 登录 IP 地址的方法方法一:修改 SSH 配置文件方法二:使用 hosts.allow 和 hosts.deny 文件方法三:使用防火墙规则方法四:使用 access.conf 文件注意事项Linux 限制 root 登录 …

Word中怎样插入特殊符号

使用 “插入” 菜单:插入常用符号:将光标置于要插入符号的位置,点击 “插入” 选项卡,在 “符号” 组中点击 “符号” 按钮,会弹出一个符号库,里面包含了常见的标点符号、特殊字符等,找到所需符…

Linux 内核发包流程与路由控制实战

Linux 内核发包流程与路由控制实战 在网络调优、性能优化、SDN、NFV、容器网络等场景下,理解 Linux 内核发包路径和路由控制机制是必修课。 本文将从内核网络栈的原理入手,再结合 iproute2 命令和 策略路由给出实战案例。一、Linux 内核发包流程&#xf…