APP测试(十一)

news2024/11/10 13:32:48

APP测试要点提取与分析

一、功能测试

  • APP是什么项目?核心业务功能梳理清楚 — 流程图分析
  • APP客户端的单个功能模块 — 细化分析
    • 需要使用等价类,边界值,考虑正常和异常情况(长度,数据类型,必填,重复,隐形需求)
  • 依据功能业务逻辑考虑功能交互

功能测试点提取与用例设计方法都跟web测试一致,但是APP有一些自己的特性测试,也要额外考虑到测试点中

1.1 安装与卸载
  • 软件安装前:
    • 空间不足时,是否有相应提示 – 异常
  • 软件安装中:
    • 安装过程中是否可以取消,再次安装成功 – 僵尸程序
    • 安装是否可以正常运行
  • 软件安装后: – 运行
    • 是否可以卸载应用:1)通过桌面卸载 2)通过软件设置卸载 – 重新安装
      常见bug,发现在IOS手机上有个应用安装时未完全安装,终止安装后,未完成安装的应用图标一直显示在手机上,并且无法成功删除 – 僵尸程序
    • 安装完是否自动删除安装包 — Android
    • 卸载之后,重新安装
  • 重复安装:
    • 提示版本已存在
    • 直接覆盖安装,但是能正常使用 – 正常
1.2 软件更新升级
  • 升级之前
    • 当客户端有新版本时,是否有更新提示
  • 升级之后
    • 更新后各个功能(新/老功能)是否能正常使用;
    • 更新后老数据存在并正常 – 新旧版本兼容性;
  • 非强制升级版
    • 用户可以取消更新,老版本正常使用,下次启动app时候,依旧可以出现更新提示
  • 强制升级版
    • 用户没有做更新时,退出客户端,下次启动app时,仍出现强制升级提示
  • 在线跨版本升级
    • 升级后正常使用
    • 选择的版本 — 用户使用量最多的版本 – 主流版本

问题:

  1. 新功能正常使用
  2. 旧功能ok
  3. 旧数据不会丢失
  4. 跨版本 – 主流
1.3 登陆测试
  • 登录方式
    • 用户名,短信验证码,指纹,二维码,手势,语音,头像识别,第三方登录(微信,QQ,微博),一键登录
  • 未登录方式
    • 一些页面的操作,是否有有效控制,点击某资源时,提示需要先进行登录
    • 用户主动退出登录后,下次启动APP时,应该进入登录界面 – 参考成熟产品
  • 切换账号登录:检验登录的信息是否做到及时更新、用户越权安全问题
  • 登录控制:通过功能限制只能在单个客户端或者指定个数的客户端进行登录操作
    • 不允许多点登录时,是否将原用户踢下线,且能够给出提示信息
    • 允许多点登录时,提示信息;且确保数据库操作无误,每个端可以及时看到数据的更新
  • 用户登录持续时间太久,账号信息会过期
    • 出现”虽然是登录状态,系统会提示用户没有登录“
    • 强制退出,并提示:账户信息过期,请重新登录
  • 单点登录(SSO)
    一个系统登录了账号,在跳转到别的页面就不用再登录了, – 系统内信息可以互通
1.4 手机行为测试

触屏及操作测试 – 可以不支持,但不能有异常

  • 触屏快捷手势:两指,三指,五指
  • 长按,短按屏幕
  • 手机横屏,竖屏检测 – 切换,APP兼容性,闪退,可以支持,出现问题
  • 同时触摸不同地方,同时进行不同操作 – 随机性测试,monkey

查看客户端的处理情况,是否会crash,ANR(无响应),

注意:需要与开发和产品确认是否支持!

1.5 消息推送
  • 开关设置
    • 默认状态全部打开,客户端可以接受推送消息
    • 设置开关可以打开,关闭;app设置关闭时,client不会接收消息推送
  • 手机客户端未锁屏时
    • app应用后台运行,消息推送是否可以正常接收,且可以点击查看
    • app应用前台使用,可以收到消息提醒,且点击查看
  • 手机客户端锁屏时,消息推送是否正常接收
  • 登录状态:
    • 退出登陆后,是否接收push消息,根据需求确定
    • 重新登录用户,批量接收多条消息推送
    • 切换用户时,推送消息是否符合当前登录用户
  • 消息栏(通知中心)是否可以接收到消息提醒,且点击可查看,点击后消息栏中消失

二、UI 界面测试

  • 确保产品UI符合产品经理指定的原型图与UI实际效果图一致
  • 依据经验,用户使用习惯,参看其他成熟的产品,界面可优化的bug
    • 一般涉及界面布局,风格,文字是否正确,页面是否美观,操作是否友好

UI界面测试和web思路一致

三、兼容性测试

  • app是否在不同操作系统正常使用,一般Android和IOS是两个不同的app,但功能类似
  • 每个平台的不同系统版本 – 系统更新后,需要做回归测试
  • 是否适配各种屏幕尺寸 – 与开发确认是否支持pad
  • 选择手机品牌,市场占有率高
  • 分辨率适配,保证主流分辨率下页面显示完整,文字不被遮挡
  • 特定用户指定要求

总结

  • app兼容性测试一般覆盖,Android系统手机,选取市面上主流手机即可,例如:小米,vivo,oppo等
    ios系统就是 x xs 11 11plus

  • 公司里有哪些测试手机,申请设备

  • 云测平台

四、安全性测试

在这里插入图片描述

五、中断测试

  • app被手机行为打扰的情况,观察手机能否正常处理,保证数据正确性,
  • 主要对核心功能存在实时数据交换的页面进行中断测试,除了确保中断过程中有合理的处理,还需要确保中断过后,恢复正常
    • 来电,来短信,锁屏解锁,断网重连,断电,低电量提醒,前台后台切换,app切换
    • 手机端硬件上,如,插拔数据线,耳机,闹铃弹出框提示等操作
  • 常见bug场景
    • 爱奇艺视频播放过程中,微信通话/电话中断:
      • 正常,app暂停状态,通话接收后,恢复直播正常
      • 异常 ,app卡死,音视频不同步
    • 微信视频聊天,低电量提醒中断
      • 正常,聊天不中断,关掉提示信息后,正常通讯
      • 异常,app卡死,崩溃,微信聊天被强行断开,bug

六、网络测试

  • 测试3G,4G,5G,wifi,热点,网络切换 – 用户场景
    • 例如,从wifi环境切换到4G环境,提示是否启动4G网络,会产生扣费,是否有提醒
  • 测试有网,无网切换下应用的运行
    • 网络连接 -> 网络断开 -> 网络连接,数据是否可以自动恢复,正常加载
    • 无网络情况,各种提示是否友好,数据本地化是否正确
  • 弱网测试(工具模拟 延时+丢包),关注弱网情况下是否有合理提示,且是否有重发机制
    • 提交数据是否一直处理提交中,是否会有延迟,数据交换失败是否会有提醒;
    • 数据多次提交(支付类app),是否只能被执行一次
    • 最大尝试次数,app是否正常工作
  • APP离线测试
    在这里插入图片描述

Q:为什么要进行弱网测试,弱网测试关注点有哪些?用什么工具模拟弱网?

A:贴近用户真实使用环境,fiddler,charles

七、性能测试

在这里插入图片描述

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

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

相关文章

JavaFX基本控件-Label

JavaFX基本控件-Label 常用属性textpaddingalignmenttextAlignmentwidthheighttooltipborderwrapTextellipsisStringunderline 实现方式Java实现fxml实现 常用属性 text 设置文本内容 label.setText("这是一个测试数据");padding 内边距 label.setPadding(new Inset…

Python计算机视觉四章-照相机模型与增强现实

目录 4.1针孔照相机模型 4.1.1照相机矩阵 4.1.2 三维点的投影 4.1.3 照相机矩阵的分解 4.1.4 计算照相机中心 4.2 照相机标定 4.2.1 一个简单的标定方法 4.3 以平面和标记物进行姿态估计 4.4 增强现实 4.4.1 PyGame和PyOpenGL 4.4.2 从照相机矩阵到OpenGL格式 4…

部署Rancher2.9管理K8S1.26集群

文章目录 一、实验须知1、Rancher简介2、当前实验环境 二、部署Rancher1、服务器初始化操作2、部署Rancher3、登入Rancher平台 三、Rancher对接K8S集群四、通过Rancher仪表盘部署Nginx服务1、创建命名空间2、创建Deployment3、创建Service 一、实验须知 1、Rancher简介 中文官…

碎碎恋之懒加载和预加载

目录 0 前言1 fragment复习1.1 静态创建1.2 动态创建1.3 两者生命周期1.4 fragment之间的通信 0 前言 懒加载,延迟加载;如kotlin中初始化;减小资源消耗,可以避免同一时间需要加载的内容过多。 预加载,提前加载&#x…

经典大语言模型解读(2):生成式预训练的先锋GPT-1

论文地址:Improving Language Understanding by Generative Pre-Training 概述 现实世界中包含了大量的文本语料数据,然而,绝大多数语料都是无标签的。 为了充分利用这些无标签语料库,GPT1.0提出直接利用这些未标记的语料来进行…

【BLE】三.GATT/ATT规范

基本概念回顾 CS交互流程 SPP(蓝牙透传)的示例初始化: SPP示例运行过程: GATTS&GAP回调: 黄色:事件回调 绿色:事件 蓝色:执行 GATTC&GAP回调: 服务特征…

安全入门day.04

一、密码存储加密知识点 1、MD5 MD5加密是一种广泛使用的密码杂凑函数,它可以将任意长度的信息通过一系列复杂的数学和位操作转化为一个128位(16字节)的散列值(hash value),这个散列值通常被表示为一个32位…

【Qt】工具栏

工具栏 工具栏是应用程序中集成各种功能实现快捷键使用的一个区域。 在Qt中使用QToolBar表示工具栏对象,一个窗口可以有多个工具栏,也可以没有,工具栏也是可以进行手动移动位置。 例子:创建工具栏 (1)创…

信息系统运维服务方案(Word原件完整版)

1 编制目的 2 系统运行维护 2.1 系统运维内容 2.2 日常运行维护方案 2.2.1 日常巡检 2.2.2 状态监控 2.2.3 系统优化 2.2.4 软件系统问题处理及升级 2.2.5 系统数据库管理维护 2.2.6 灾难恢复 2.3 应急运行维护方案 2.3.1 启动应急流程 2.3.2 成立应急小组 2.3.3 …

【hot100篇-python刷题记录】【轮转数组】

R7-数组篇 思路: 印象题,我记得可以使用python切片拼接 python切片 要轮转k个位置,那从第k个下标开始切片,然后拼接[0,k) class Solution:def rotate(self, nums: List[int], k: int) -> None:"""Do not re…

云计算第二阶段---DBA Day8-Day9

DBA Day8 该阶段的2天内容,都会和数据库中间件,集群配置有关. 什么是中间件? 通俗来说,就是在正式文件内容从客户端发送或获取请求时,在传播过程中地点中间商,负责管理请求,并对其进行分类。 环境准备: 准备…

【入门教程】基于深度学习的遥感图像分割流程(附代码)

本文为入门遥感图像分割的朋友提供一份详细教程,看完你将收获: 大致了解图像分割的基本流程能够独立完成从拿到数据集到完成分割结果并评估的任务 有任何问题欢迎关注or私信,看到即回复,文末附代码链接。 文章目录 0.引言1.数据…

农事管理系统

摘 要 使用旧方法对农事管理系统的信息进行系统化管理已经不再让人们信赖了,把现在的网络信息技术运用在农事管理系统的管理上面可以解决许多信息管理上面的难题,比如处理数据时间很长,数据存在错误不能及时纠正等问题。这次开发的农事管理系…

2-83 基于matlab的自适应正则化核的模糊均值聚类框架(ARKFCM)

基于matlab的自适应正则化核的模糊均值聚类框架(ARKFCM),用于脑磁共振图像的分割。该框架采用三种算法,分别平均滤波器、中值滤波器和设计的加权图像的灰度来代替局部平均灰度。利用邻域中灰度的异质性获取局部信息,并用高斯径向基核函数替换…

【#第三期实战营闯关作业 ## MindSearch在 Hugging FaceSpace的部署】

把MindSearch 部署到Github Codespace后,下一步就是上传到 Hugging Face Space,以下是记录了实操的过程及截图: 打开 https://huggingface.co/spaces ,并点击 Create new Space,如下图所示:在输入 Space name 并选择 …

数据仓库系列18:如何建立一个有效的元数据管理体系?

目录 什么是元数据?为什么它如此重要?元数据管理体系的核心组件如何设计元数据模型步骤1: 识别关键元数据类型步骤2: 定义元数据属性步骤3: 建立元数据之间的关系步骤4: 选择合适的建模方法示例: 使用关系模型设计元数据模型最佳实践 元数据采集策略1. 识别元数据来源2. 自动…

正则表达式pattern

String qq "1234567890" qq.matches("[1-9]\\d{5,19}") [1-9]第一位不等于零 \\d都是数字 {5,19}后面的5到19位。 正则表达式的作用 作用1:校验字符串是否满足规则 作用2:在一段文本中查找满足要求的内容 sout("\"…

Cesium 地球云图

Cesium 地球云图 使用自定义图原(Primitive)实现。 支持速度和透明的动态调整。 支持设置云图高度, 当相机高度小于云图高度时, 渐隐消失。 Cesium 地球云图

Qt-初始Qt

1. Qt背景介绍 1.1 什么是Qt Qt是⼀个跨平台的C图形⽤⼾界⾯应⽤程序框架。它为应⽤程序开发者提供了建⽴艺术级图形界⾯所需的所有功能。它是完全⾯向对象的,很容易扩展。Qt为开发者提供了⼀种基于组件的开发模式,开发者可以通过简单的拖拽和组合来实现…

003.精读《MapReduce: Simplified Data Processing on Large Clusters》

文章目录 1. 引言:2. 精读2.1 背景2.2 模型应用2.3 基本原理2.4 其他 3. 总结 1. 引言: 在本期的精读会中,我们将深入探讨一篇具有里程碑意义的论文——《MapReduce: Simplified Data Processing on Large Clusters》。这篇论文不仅奠定了大…