推广 热搜: 行业  机械  设备    经纪  教师  系统  参数    蒸汽 

【笔记】移动端测试基础知识

   日期:2024-11-07     移动:http://yishengsujiao.xhstdz.com/quote/3153.html

《移动端App手工测试项目实战(学车不APP)》视频学习目标: 1.APP测试基础知识 2.《学车不》App项目 1)app应用测试要点 2)业务功能测试 3)兼容性测试 4)安装卸载升级测试 5)交叉事件测试 6)Push消息测试 7)性能测试

【笔记】移动端测试基础知识

移动端App手工测试项目实战(学车不APP),最新2021教学视频(含Scrum敏捷开发流程、性能测试、稳定性测试)_哔哩哔哩_bilibili

https://blog.csdn.net/itcast_cn/article/details/112902162

视频http://yun.itheima.com/course/826.html?stt 资料链接:https://pan.baidu.com/s/1b5YIpzBook_aviHcZT2gAw 提取码:o5q6

APP测试基础知识

了解APP项目的应用架构和项目环境 掌握基于敏捷开发的测试流程 掌握APP测试的要点,熟悉各专项测试项目的关注点

熟悉GT工具的使用,能使用GT进行各项性能测试

在这里插入图片描述

App应用架构

  • APP 应用架构:客户端程序+应用服务器+数据库
  • App 与 web 系统应用架构相比

相同点: 1、APP和web使用的后端服务器是相同的 2、前后端都使用HTTP协议进行交互 (也有部分APP用socket来交互) 不同点: 1、APP是C/S结构,web浏览器是B/S结构 2、APP前后端交互的数据格式以ison为主,web前后端交互的数据格式以HTML为主

APP项目环境及发布平台 一、APP项目环境(后端) 一般公司内部开发、测试人员会使用不同的环境,以隔离工作过程中彼此之间的干扰。同时,上线给用户使用的产品也会单独部署环境。 - 开发环境 指开发人员进行开发时调试运行的环境 - 测试环境 提供测试人员使用,用于测试人员执行测试,回归缺陷。 - 预发布环境 这个环境中,一般会连接生产环境的数据库,使用生产环境的数据来进行测试 - 生产环境 指正式提供对外服务的环境,产品的实际用户使用的环境 预发布环境过后,正式发布生产环境之前,一般会进行灰度发布。灰度发布:由于一个项目,一般线上部署时有多台机器运行,所以灰度1台至三台,看看新功能是否OK,如果失败则只需要回滚几台,比较方便

APP开发完成后,相应的开发人员会打出应用程序包,由测试人员安装测试。 测试人员

  • 安卓:APK测试包

  • IOS:IPA测试包

应用内测分发平台 在实际测试工作中,为了方便测试程序包的安装和管理,可以使用一些免费的应用内测分发平台。将应用测试包上传到这些平台上,可以生成对应的二维码,直接扫码进行应用安装

  • 蒲公英

  • fir.im

应用线上发布平台 产品测试完成后要在线上进行发布,让用户进行下载使用。下面是安卓和IOS应用常用的发布平台和渠道

  • 安卓应用:豌豆荚、应用宝、360手机助手、各类手机品牌商城等
  • IOS应用:主要有Appstore、iTools

三、Scrum敏捷开发流程

Scrum介绍 学习目标:学握Scrum的三种角色 学习目标:熟悉敏捷开发流程 下面以Scrum为例简单介绍下敏捷开发流程 Scrum是一个敏持开发框架,是一个增量的,迭代的开发过程,在这个框架中,整个开发周期包括若干个小的迭代周期,每个小的选代周期成为一个Sprint(sprint: 项目开发过程中最小这代周期),每个Sprint的周期建议为2-4周。在Scrum中,将产品Backlog(产品待办列表)按商业价值排出需求列表,在每个送代中开发团队从产品Backlog挑选最有价值的需求进行开发,实现完成后产品推出市场,进入下一个迭代。

Scrum的三种角色: Product owner(产品负责人)

定义所有的产品功能 决定产品发布的内容及日期 根据市场变化对需要开发的功能排列优先顺序

Scrum Master(项目经理)

领导团队完成scrum的实践以及体现其价值 确保团队的人胜任其工作,并保持高效的生产率 保护团队不受外界无端影响

Dev Team(开发团队)

规模(经典团队一般5到9人) 成员组成: 程序员 测试员 用户体验设计师 主要职责: 卖现客户需求

在这里插入图片描述

scrum 敏捷开发流程:

1、产品负责人收集需求,转化为产品功能列表 2、启动迭代的计划会,评审产品功能列表,挑选优先级高的需求作为迭代任务 3、项目组成员完成迭代任务的开发、测试工作 4、迭代结束后,开评审会,评估当前迭代任务的完成情况 5、开反思会。总结迭代过程中的好的与不好的地方。 下一迭代,循环 2-5步

对于APP项目的测试,一般是进行系统测试。 系统测试的要点一般包括如下这些方面

在这里插入图片描述

显性需求 根据软件说明,设计文档或用户需求验证App的各个功能的实现。 隐性需求: 相关业务:功能影响到的相关业务 其他角度:分支流程、逆向操作、异常操作 补充精简:测试策略、业务知识、测试经验

兼容性测试 APP在不同的机型上由于软件、硬件等不同可能出现各种各样的问题,因此需要做兼容性测试。 兼容性测试关注点

1、手机型号

  • 覆盖市场主流机型 (Android: 三星,小米,OPPO,华为)
  • 考虑APP线上用户机型排名

2、系统版本

  • 安卓系统 4.4、5.1、6.0、7.0
  • ios系统 9.x、10.x、11.x、12.x

3、屏幕尺寸,分辨率

  • 分辨率 1080x1920、720x1280
  • 屏幕尺寸 5.5、4.7

4、网络 2G、3G、4G、WIF

5、应容性

  • 与手机硬件兼容 home键、电源键、音量调节等

  • 与外部硬件设备兼容 耳机、蓝牙等

  • 与操作系统软件兼容 wlan设置、系统时间调节、LBS定位等

  • 与其他APP兼容 后台在播放音乐时,进入动态页面点击动态视频的播放,系统如何处理

第三方平台测试

https://www.testin.cn/

在这里插入图片描述

APP是客户端程序,客户端程序就需要提前进行安装才能使用,因此需要测试安装、卸载、升级操作。 安装测试关注点 正常场景: 1、在不同的操作系统版本上安装 2、从不同的安装渠道安装(APP商城、手机助手、直接下载apk或者ipa文件安装) 3、不同的安装路径 (安装到手机上、安装到SD卡上)异常场景 4、安装时出现异常(关机、断网),恢复后能否继续安装 5、安装时存储空间不足 6、安装时手动取消后再次安装 7、正在运行时覆盖安装 8、低版本覆盖安装高版本 9、卸载后安装

卸载测试: 1、正常卸载(APP手动卸载、工具卸载) 2、运行时卸载 3、取消卸载 4、卸载异常中断 5、卸载后无数据残留

升级测试: 1、从临近版本升级 2、跨版本升级 3、不同渠道升级 (应用商场、手机助手) 4、升级提醒成功 (可不提醒、可以提示升级、强制升级) 5、应用内升级时非WIFI提醒 升级后要观察升级前的数据正常 (当数据结构改变而开发没有处理好时很容易出现升级前的数据混乱)

交叉测试又叫冲突测试或者干扰测试。 是指一个功能正在执行过程中,另外一个事件或操作对该过程进行干扰的测试。例如: 在App前台/后台运行同时接听来电或者下载文件等等

交叉事件测试关注点 如何测试: 模拟用户场景 (所有可能会影响APP正常运行的场景) 1、APP运行时接打电话; 2、APP运行时收发信息; 3、APP运行时查看应用推送 4、APP运行接上蓝牙设备 5、APP运行时接收文件弹窗提醒 6、APP运行时旋转屏幕 7、APP运行时切换网络 (4G、Wi-Fi) ; 8、App运行时使用相机、计算器等手机自带应用; 9、App运行时电量告警、插拔充电器。

Push消息推送基础知识 APP使用push消息的原因: 消息推送场景: 产品角度:功能需要,如: 资讯类产品的新闻推送、工具类产品的公告推送等等运营角度: 活动

运营需要,如: 电商类产品的促销活动;召回用户/提高活跃度等等

消息推送原理:

在这里插入图片描述

Push消息推送的实质: 实际上,是当服务器有新消息需推送给用户时,先发送给应用App,应用App再发送给用户。 在这里插入图片描述

push消息推送的方式 1 操作系统级别的消息推送服务 ios: Android: C2DM (Cloud to Device Messaging) 在这里插入图片描述

应用的后台服务器 ——> 消息推送服务 ——> 手机 ——> 应用app

2 用第三方推送平台 手机厂商类:小米推送、华为推送。第三方平台类:友盟推送、极光推送、云巴 (基于MQTT)BAT大厂的平台推送: 阿里云移动推送、腾讯信鸽推送、百度云推送

3 自己搭建推送服务器 好处:功能好、性能强、安全性高 缺点:成本高

push 消息推送的方式:

1、操作系统自建的 push 服务器 2、第三方的 push 服务器

3、自建 push 服务器(安全、稳定、高效、成本高

push推送设置:

APP服务器设置

push消息针对不同的用户群体: 全部用户、部分用户、特定用户

手机端设置

push消息推送是否接收通知,提醒位置等

push消息测试关注点 1、Push消息是否按指定业务规则发送; 2、当Push消息是针对特定用户时,检查收到的Push与用户身份是否相符

3、设置不接收推送消息时,用户是否会收到Push消息; 4、设置push消息显示的位置,是否与配置一致 5、收到push消息,是否能正常打开。 6、APP在前台使用时,收到push消息如何提示

7、APP在后台运行时,收到push消息如何提示

8、APP离线,是否能收到PUSH消息。

性能测试 性能是衡量APP质量的一个重要指标 APP性能测试常见指标: 内存,CPU,流量,电量,启动速度,流畅度等。

在这里插入图片描述

性能测试关注点 APP使用时对CPU、内存的占用情况 APP使用时是否流畅等 APP使用时,电量流量的消耗情况; APP的启动时间是否过长;

GT简介: GT(随身调)Android版是腾讯 MIG 专项测试组自行研发的A 随身调测平台,它是直接运行在手机上的“集成调测环境”ITE,Integrated Test Environment)。 之所以叫“集成调测环境”,是因为仅用 GT即可独立完成如下针对 AUT 的测试工作:

  • 基础性能测试: 手机整机或者手机上安装的任何一个 APP 的 CPU、内存、网络流量、流畅度/率、电量等基础性能指标的实时展示、历史数据采集及 excel 格式存储、曲线绘制等
  • 日志查看: APP的 Logcat 日志查看,便于直接用手机现场定位 APP 功能异常、crash。·网络数据包抓包: 直接用手机抓包保存成 pcap 文件,下载到 PC 后用 Wireshark 查看

GT安装: GT有两种版本: (1)可独立安装的 GT (APK,IOS无该版本),像普通APP一样安装

(2)GT SDK: 将GT的SDK嵌入到被调测的应用的工程里

GT使用: 性能测试工具 GT 的基本使用: 安装:手机有 root 权限 (1)进入 AUT 界面,配置要监控的指标 (2)进入参数页面,选择要统计的参数,选择需要实时监控的数据 (3)配置日志开头为 logcat 为 on (4进入APP进行测试 (5)回到 GT 界面,在参数界面看查看监控指标的数据统计

(6)进入日志,查看响应的日志记录

APP性能测试工具——GT 使用方法_Bruce小鬼的博客-CSDN博客_gt工具兼容性

CPU关键指标:GT工具提供了两个CPU的监控指标: CPU和jiffies

CPU

用户态:应用程序占用的CPU时间

系统态:系统内核占用的CPU时间

空闲态:空闲进程占用的CPU时间(idle process

CPU使用率=非空闲态/CPU总时间=(用户态+系统态)/CPU总时间

jiffies

从开机到目前为止应用程序占用的CPU的总时间片。

CPU问题产生的影响

1、CPU长时间超过90% 2、手机发热、耗电量增加 3、手机卡顿、出现ANR(Application Not Responding)

CPU测试的步骤

(1)打开GT,配置CPu的监控指标

(2)进入被测APP,进行相关的业务操作

(3)进入GT,查看CPU的监控统计(先看曲线图

(4)收集CPU详细数据并分析

实战

1-037-性能测试—CPU测试的步骤_哔哩哔哩_bilibili

监控结果保存到目录文件的步骤 (1)打开模拟器桌面上的 文件管理器 (2)在文件管理器内,自己找你需要导出的文件,然后点击勾。 (3)连续点击返回按钮,一直到文件管理器的根目录下 (4)点击mnt文件夹,点击shared文件夹,然后点击other文件夹,再点击点击粘贴此选项。 (5)出现表示粘贴成功,再点击我的电脑 按钮,点击打开文件夹,就可以看到刚刚保存的文件了

1-038-监控结果保存到目录文件_哔哩哔哩_bilibili

内存关键指标 GT工具提供了两个内存的监控指标: PSS和Private dirty

Private dirty (私有内存): 进程独占内存,也就是进程销毁时可以回收的内存容量

PSS (实际使用内存) : 将跨进程共享页也加入进来,进行按比例计算PSS。这样能够比较准确的表示进程占用的实际物理内存。

内存问题

1、内存泄漏:程序操作时申请内存,操作结束后内存未全部释放

一次内存泄露危害可以忽略,但内存泄露堆积后果很严重,无论多少内存,迟早会被占光。

2、内存溢出:程序操作时申请内存,但是此时内存不够,不能满足申请的要求,就出现内存溢出。

内存问题出现的现象

1、实际使用内存PSS持续增长

2、程序崩溃(出现crash,可能是内存溢出

内存测试的步骤

1、打开GT工具,配置内存相关的指标

2、打开被测APP,测试相关业务,监控内存指标

3、打开GT,查看内存监控数据(曲线

4、收集内存相关的数据,并分析

1-041-性能测试—内存测试的步骤_哔哩哔哩_bilibili

流畅度的重要指标

FPS:每秒渲染的帧数。

流畅度问题的影响

表现形式:卡顿

FPS指标的数据要求

通常要求在24帧/s以上,保证流畅。(动作连续10-12帧、最高60帧/s

流畅度测试的步骤: 1、打开GT,配置流畅度指标FPS 2、打开被测APP,滑动页面,统计FPS值 3、进入GT,查看流畅度曲线 4、收集滑动操作时的流畅度数据,计算平均值。(24帧/s——60帧/s之间就是正常的

1-043-性能测试—流畅度测试的步骤_哔哩哔哩_bilibili

流量:手机通过运营商上网时,运营商的网络替我们转发报文,报文包括上下行的报文。

GT工具提供了流量的监控指标: NET

常用流量测试方法: 1 统计测试法 获取应用程序收发的数据报文,统计出对应的流量 2抓包测试法 主要是利用工具 Tcpdump 或者fiddler抓包,导出 pcap 文件,再在 wireshark 中打开进行分析

流量测试的步骤

(1)打开GT,配置流量指标NET

(2)进入GT的插件tab,选择抓包,开始

(3)进入被测APP,进行相关的业务测试

(4)进入GT,查看NET指标的流量曲线

(5)手机抓包的报文,进行进一步分析

1-045-性能测试—流量测试的步骤_哔哩哔哩_bilibili

场景的流量优化方法: 1 数据的压缩 2 不同数据格式的采用。 3 控制访问的频次 4 只获取必要的数据 5 缓存机制 6 针对不同的网络类型设置不同的访问策略 面试题; 打开页面迷度过慢,如何优化?

电量测试: 测试移动APP消耗电量的快慢速度。主要通过测试APP使用时的平均电流(对手机而言,总电量是固定的mAh,来计算APP电量消耗的大小。 GT提供了几个指标:电流、电压、电量和温度 常见的耗电场景: 定位GPS 网络传输(4G、wifi) 屏幕亮度 CPU频率 内存调度机制 锁屏、解锁

电量测试的步骤(1)打开GT,进入插件tab,点击电量收集 (2)配置电量收集的频率、亮度、收集的数据指标 (3)进入被测APP,进行相关的业务操作 (4)进入GT,收集电量的相关数据来进行分析。

电量结果的分析(1)与基准数据做对比(可以来源于产品经理、或者来源于历史数据积累(2)横向对比(竞品分析对比

冷启动:app从后台被杀死,此时再打开app,记录app启动的时间 热启动:app在后台运行,此时再打开app,记录APP启动的时间

APP启动时间的测试方法

1-051-性能测试—APP启动时间的测试方法_哔哩哔哩_bilibili

adb命令

adb shell am start -W -n 包名/Activity名(学车不为:com.bjcsxq.chat.carfriend/.module_main.activity.MainActivity

三个重要时间指标

Thistime:当前activity的时间

Totaltime:APP启动时间:包括创建进程、APP初始化、activity初始化到界面显示。

waittime:totaltime+前一个activity pause时间

APP启动时间结果的分析(1)与基准数据对比(历史数据分析(2)横向对比(竞品数据对比

用户体验测试关注点 (1) UI界面测试 对照UI交互设计文档,检查每个界面设计菜单、对话框、窗口、风格、布局等 注意事项: 图片、按钮(选中效果)、字体大小、颜色、居中对齐等等 (2) 易用性测试 是否有空数据界面设计,引导用户去执行操作 菜单层次是否太深 交互流程分支是否太多

完成业务操作的步骤是否过多

界面中按钮可点击范围是否适中

是否定义Back的逻辑。涉及软硬件交互时,Back键应具体定义 (3) 横竖屏测试 横竖屏的切换是否正常 (针对每个页面都要做横竖屏测试)

特别要关注APP中有表格,因为横竖屏的显示宽度不一样 (4)关注手机应用上的其他辅助功能

可以重点关注“放大字体”、反色”、“语音转换”、多点触碰等功能

通过长时间对应用程序进行无序操作,检验应用程序是否会出现异常。如闪退crash、无响应ANR等

稳定性测试工具一-Monkey Monkey是一个命令行工具,是由安卓官方提供的 测试人员可以通过Monkey来模拟用户的触摸、点击、滑动以及系统按键等操作(操作事件都是随机的),从而实现对APP压力的测试和稳定性测试。 (具体Monkey的使用在后续app自动化章节介绍)开发人员结合monkey 打印的日志和系统打印的日志,修改测试中出现的问题。

稳定性测试的时机 一般需要等产品稳定了,bug比较少的时候,再用monkey去测试待测试应用的稳定性。

如何测试APP

1、业务功能测试

2、兼容性测试

3、安装卸载升级测试

4、交叉事件测试

5、用户体验测试

6、PUSH消息测试

7、性能测试(CPU、内存、流量、电量、流畅度、启动速度

8、稳定性测试

发布上线后,工作

跟踪用户反馈

处理线上bug

本文地址:http://nhjcxspj.xhstdz.com/quote/3153.html    物流园资讯网 http://nhjcxspj.xhstdz.com/ , 查看更多

特别提示:本信息由相关企业自行提供,真实性未证实,仅供参考。请谨慎采用,风险自负。


0相关评论
相关行业动态
推荐行业动态
点击排行
网站首页  |  关于我们  |  联系方式  |  使用协议  |  版权隐私  |  网站地图  |  排名推广  |  广告服务  |  积分换礼  |  网站留言  |  RSS订阅  |  违规举报  |  鄂ICP备2020018471号