App的测试,和传统软件测试有哪些区别?应该增加哪些方面的测试用例?

从上图可知,测试人员所测项目占比中,App测试占比是最高的。
这就意味着学习期间,我们要花最多的精力去学App的各类测试。也意味着我们找工作前,就得知道,App的测试点是什么,App功能我们得会测试,App非功能的性能,兼容,弱网这些维度的测试我们也要会。
App如此重要,所以题主的问题我觉得有必要回答下。App的测试与传统软件测试在很多方面存在区别,主要是因为移动应用与传统软件在平台、用户交互、性能等方面有很大的差异。
为了将题主问题阐述清楚,下面行文就将问题拆成这几个:
1、App的测试,和传统软件测试有哪些区别?
2、相比传统测试,App的测试应该增加哪些方面的测试用例?
3、App测试相关的学习资源分享
一、App的测试,和传统软件测试相比,有哪些区别?
一般而言,传统软件测试更注重界面、负载和传统计算机环境下的特征。而App测试更加注重移动特有的因素。接下来我们通过平台差异、用户交互、网络连接、设备硬件、更新发布和安全性等方面,来系统聊下二者的差异。
1、平台差异:
传统软件通常设计为在桌面或浏览器上运行,而App需要在各种移动平台上运行,如iOS、Android、鸿蒙等。因此,App测试需要覆盖不同平台和设备的兼容性。
举例功能测试, App需要在多个操作系统和设备上运行,因此App的功能测试需要覆盖不同平台的特定功能,以确保一致性。
再举例兼容性测试,App测试需关注不同操作系统版本和设备型号,确保应用在各种环境中稳定运行。
2、用户交互差异:
App应用通常更注重用户体验和触摸屏交互,相较于传统软件更加直观。所以App测试需关注触摸、手势、旋转等移动特有的用户交互。
举例 交叉事件
测试, App应用的用户交互更为复杂,需要测试各种手势、触摸操作,以及设备方向变化对应用的影响。
再举例Push消息测试
,要确保App应用能够准确接收和处理推送消息,保证及时的信息传递。
3、网络连接差异:
传统软件可能在一个稳定的局域网络中运行,而App应用通常依赖网络连接,所以App测试需考虑不同网络条件下的应用性能和稳定性。
举例性能测试: 考虑到移动设备可能在不同网络条件下运行,App性能测试需要关注在2G、3G、4G和Wi-Fi等环境下的应用响应速度和数据加载时间。
4、设备硬件差异:
移动设备的硬件差异较大,包括屏幕大小、分辨率、处理器等。App测试需要覆盖各种硬件配置,确保应用在不同设备上正常运行
举例安装卸载升级测试: 移动应用经常需要用户手动安装、卸载和升级,测试需确保这些操作在各个设备的稳定性,避免导致数据丢失或应用崩溃。
5、更新和发布差异:
App应用的更新和发布通常比传统软件更频繁。测试需要关注App应用在不同版本之间的兼容性,并确保更新过程
顺利。
举例稳定性测试: 移动应用常常面临频繁的更新,测试需确保新版本的稳定性,避免用户在升级后遭遇问题。
6、安全性差异:
相比传统软件,App应用可能涉及更多的敏感信息,如地理位置、相机等。App测试需加强对安全性的考量,包括数据加密、权限管理等方面。
举例 安全性测试
: 移动应用往往涉及用户敏感信息,测试需加强对数据传输加密、用户权限控制等方面的安全性测试,以防潜在的安全风险。
现在我也找了很多测试的朋友,做了一个分享技术的交流群,共享了很多我们收集的技术文档和视频教程。
如果你不想再体验自学时找不到资源,没人解答问题,坚持几天便放弃的感受
可以加入我们一起交流。而且还有很多在自动化,性能,安全,测试开发等等方面有一定建树的技术大牛
分享他们的经验,还会分享很多直播讲座和技术沙龙
可以免费学习!划重点!开源的!!!
qq群号:110685036【暗号:csdn999】

二、相比传统测试,App的测试应增加哪些方面的测试用例?
相比传统测试,App测试应该增加哪些方面,也就意味着我们先要了解传统测试会有哪些用例:
1、传统软件会考虑的测试用例:
1)功能测试类用例:
测试不同模块的功能是否正常,确保所有功能按照需求规格书的要求运行。
举例界面测试: 针对传统软件的图形用户界面,(GUI),测试各种控件、菜单和操作是否符合设计标准。
2)性能测试类用例:
举例负载测试: 在传统软件中,测试应用在高负载情况下的性能表现,确保系统能够处理大量并发请求。
3) 稳定性测试用例:
长时间运行测试
: 在传统软件中同样需要进行长时间运行测试,模拟用户在应用中执行各种操作,确保应用在长时间使用时不会出现崩溃或性能下降。
4) 安全性测试用例:
举例漏洞扫描
: 针对传统软件,进行漏洞扫描以检测潜在的安全漏洞,确保系统免受恶意攻击。
5)用户体验类测试用例:
举例人机交互测试
: 在传统软件中,测试用户在使用软件时的整体体验,包括操作流畅性、布局设计等方面。
2、App测试应增加的测试用例
通过上述对比App测试和传统软件测试的方法的对比,我们知道了二者存在的差异,那也就意味着测试用例的设计也需要根据APP应用的特点进行差异化的考虑。在传统软件的基础上,需要增加下列这些:
1)增加兼容性测试用例:
测试应覆盖不同操作系统版本、设备型号和屏幕尺寸,确保App应用在各种情况下都能正常工作。应该增加这类兼容性测试用例。
2)增加用户体验测试用例:
关注用户界面的易用性,增加包括手势操作、响应速度、界面布局等方面的测试用例。
3)增加网络环境测试用例:
增加模拟不同的网络条件的测试用例,如 3G、4G、Wi-Fi,测试应用在不同网络环境下的表现。
4).增加设备硬件测试用例:
针对不同的硬件配置设置测试用例,确保应用在各种设备上性能稳定。
5)增加安全性测试用例:
增加检查潜在安全漏洞的测试用例,确保用户数据和隐私得到保护。
6)增加测试APP稳定性的测试用例:
测试应用在更新过程中的稳定性,确保用户能够顺利完成更新并保持数据完整性。
三、App测试相关的视频类学习资源分享
总结App测试用例,需要考虑的测试点还真不少,现在整理了一个思维导图,如下图所示。

以上我们只聊了App测试的测试点和用例,但是具体App测试点如何找(如性能测试,其实还含有很多详细测试点,如截图所示),具体App测试用例如何写,如果想清楚知道,推荐下列学习资料
最后感谢每一个认真阅读我文章的人,看着粉丝一路的上涨和关注,礼尚往来总是要有的,虽然不是什么很值钱的东西,如果你用得到的话可以直接拿走!

软件测试面试文档
我们学习必然是为了找到高薪的工作,下面这些面试题是来自阿里、腾讯、字节等一线互联网大厂最新的面试资料,并且有字节大佬给出了权威的解答,刷完这一套面试资料相信大家都能找到满意的工作。


相关文章:
App的测试,和传统软件测试有哪些区别?应该增加哪些方面的测试用例?
从上图可知,测试人员所测项目占比中,App测试占比是最高的。 这就意味着学习期间,我们要花最多的精力去学App的各类测试。也意味着我们找工作前,就得知道,App的测试点是什么,App功能我们得会测试࿰…...
改进LiteOS中物理内存分配算法(详细实验步骤+相关源码解读)
一、实验要求 优化TLSF算法,将Best-fit策略优化为Good-fit策略,进一步降低时间复杂度至O(1)。 优化思路: 1.初始化时预先为每个索引中的内存块挂上若干空闲块,在实际分配时避免分割(split)操作ÿ…...
洛谷100题DAY8
36.P1416 攻击火星 此题找出规律即可 #include<bits/stdc.h> using namespace std; int n; int main() {cin >> n;cout << max(0, n - 2);return 0; } 37.P1551 亲戚 并查集模板题目 两个人如果使亲戚就合并建立联系,最后进行查找即可 #incl…...
2. OpenHarmony源码下载
OpenHarmony源码下载(windows, ubuntu) 现在的 OpenHarmony 4.0 源码已经有了,在 https://gitee.com/openharmony 地址中,描述了源码获取的方式。下来先写下 windows 的获取方式,再写 ubuntu 的获取方式。 获取源码前,还需要的准…...
flask app.config 用法
flask app.config flask app.config 是 Flask 应用程序的配置对象。它包含了 Flask 应用程序的所有配置信息,如数据库连接、密钥、调试模式等。 常用的 app.config 配置项如下: DEBUG:调试模式,默认为 False。 SECRET_KEY&…...
【Vue】【uni-app】实现工单列表项详情页面
这次主要实现的是一个工单详情页面 从工单列表项中点击详情 跳转到工单详情页面,这个详情页面就是这次我们要实现的页面,并可以通过点击这个关闭按钮返回到工单列表页面 首先是在我们原有的工单列表页面的按钮增加一个点击跳转 <button size"m…...
安装vmware_esxi 超详细
安装vmware_esxi 超详细 </h2><div id"cnblogs_post_body" class"blogpost-body blogpost-body-html">esxi安装手册 1、esxi介绍 ESXI原生架构模式的虚拟化技术,是不需要宿主操作系统的,它自己本身就是操作系统。因此…...
Spring-Mybatis源码解析--手写代码实现Spring整合Mybatis
文章目录 前言一、引入:二、准备工作:2.1 引入依赖2.2 数据源的文件:2.1 数据源: 2.3 业务文件: 三、整合的实现:3.1 xxxMapper 接口的扫描:3.2 xxxMapper 接口代理对象的生成:3.2 S…...
5.2 Windows驱动开发:内核取KERNEL模块基址
模块是程序加载时被动态装载的,模块在装载后其存在于内存中同样存在一个内存基址,当我们需要操作这个模块时,通常第一步就是要得到该模块的内存基址,模块分为用户模块和内核模块,这里的用户模块指的是应用层进程运行后…...
聊聊Go语言的注释
文章目录 聊聊Go语言的注释一、注释的格式1.1 块注释1.2 行注释 二、包注释三、命令注释四、类型注释4.1 实例注释4.2 并发安全注释4.3 零值注释4.4 导出字段注释 五、函数注释5.1 参数/返回值/函数作用注释5.2 bool返回值函数注释5.3 形参/返回值名称注释5.4 并发安全注释5.5 …...
皮肤警告,羊大师讲解身体与环境的默契
皮肤警告,羊大师讲解身体与环境的默契 我们常常忽视身体皮肤所承受的压力和警告信号。皮肤是身体的第一道屏障,也是与外界环境直接接触的组织。我们的皮肤通过各种方式向我们传达信息,警告我们关于身体健康的重要问题。本文小编羊大师将带大…...
使用NVM管理多个Nodejs版同时支持vue2、vue3
1.安装nvm,下载地址: https://github.com/coreybutler/nvm-windows/releases/tag/1.1.12 2.nvm常用命令 Usage:nvm arch : Show if node is running in 32 or 64 bit mode.nvm current : Display active version.nvm debug …...
Android帝国之进程杀手--lmkd
本文概要 这是Android系统启动的第三篇文章,本文以自述的方式来讲解lmkd进程,通过本文您将了解到lmkd进程在安卓系统中存在的意义,以及它是如何杀进程的。(文中的代码是基于android13) 我是谁 init:“大…...
堆栈_队列实现栈
//请你仅使用两个队列实现一个后入先出(LIFO)的栈,并支持普通栈的全部四种操作(push、top、pop 和 empty)。 // // 实现 MyStack 类: // // // void push(int x) 将元素 x 压入栈顶。 // int pop() 移除…...
好用的json处理工具He3 JSON
官网地址:https://he3app.com/zh/ json格式化 https://portal.he3app.com/home/extension/json-to-pretty 其他 https://portal.he3app.com/home/category...
RabbitMQ消息模型之Routing-Direct
Routing Direct 在Fanout模式中,一条消息,会被所有订阅的队列都消费。但是在某些场景下,我们希望不同的消息被不同的队列消费。这时就要用到Direct类型的Exchange。 在Direct模型下: 队列与交换机的绑定,不能是任意…...
Harmony 应用开发之size 脚本
作者:麦客奥德彪 在应用开发中,最终呈现在用户面前的UI,是用户能否继续使用应用的强力依据之一,在之前的开发中,Android 屏幕碎片化严重,所以出现了很多尺寸适配方案。 最小宽适配、百分比适配等等。 还有一…...
商家门店小程序怎么做?门店小程序的优势和好处
生活服务类商家在当前数字化时代,越来越认识到门店小程序的重要性。门店小程序不仅为商家提供了一个在线展示的窗口,更为其打造了一个与消费者直接互动的平台。有了门店小程序,商家可以更加便捷地管理商品信息、订单流程,同时还能…...
什么是灯塔工厂?灯塔工厂的作用?
什么是灯塔工厂? "灯塔工厂"概念源于德国的工业4.0战略,又称“工业4.0示范工厂”或“标杆工厂”,代表工业领域顶级的智能制造能力。2018年,由世界经济论坛和麦肯锡共同推出。 灯塔工厂是通过数字化、网络化和智能化手…...
【GEO-AI】SAM-Geo库(segment-geospatial)入门教程
今年4月份,Meta公布了它图形分割模型Segment-Anything,简称SAM。当时就想着这个东西用在遥感影像分割上应该效果不错,奈何自己能力有限,没有办法上手实践。偶然间看到有介绍SAM-Geo工具包的文章,决定研究一番ÿ…...
web vue 项目 Docker化部署
Web 项目 Docker 化部署详细教程 目录 Web 项目 Docker 化部署概述Dockerfile 详解 构建阶段生产阶段 构建和运行 Docker 镜像 1. Web 项目 Docker 化部署概述 Docker 化部署的主要步骤分为以下几个阶段: 构建阶段(Build Stage):…...
椭圆曲线密码学(ECC)
一、ECC算法概述 椭圆曲线密码学(Elliptic Curve Cryptography)是基于椭圆曲线数学理论的公钥密码系统,由Neal Koblitz和Victor Miller在1985年独立提出。相比RSA,ECC在相同安全强度下密钥更短(256位ECC ≈ 3072位RSA…...
DeepSeek 赋能智慧能源:微电网优化调度的智能革新路径
目录 一、智慧能源微电网优化调度概述1.1 智慧能源微电网概念1.2 优化调度的重要性1.3 目前面临的挑战 二、DeepSeek 技术探秘2.1 DeepSeek 技术原理2.2 DeepSeek 独特优势2.3 DeepSeek 在 AI 领域地位 三、DeepSeek 在微电网优化调度中的应用剖析3.1 数据处理与分析3.2 预测与…...
家政维修平台实战20:权限设计
目录 1 获取工人信息2 搭建工人入口3 权限判断总结 目前我们已经搭建好了基础的用户体系,主要是分成几个表,用户表我们是记录用户的基础信息,包括手机、昵称、头像。而工人和员工各有各的表。那么就有一个问题,不同的角色…...
C++中string流知识详解和示例
一、概览与类体系 C 提供三种基于内存字符串的流,定义在 <sstream> 中: std::istringstream:输入流,从已有字符串中读取并解析。std::ostringstream:输出流,向内部缓冲区写入内容,最终取…...
css3笔记 (1) 自用
outline: none 用于移除元素获得焦点时默认的轮廓线 broder:0 用于移除边框 font-size:0 用于设置字体不显示 list-style: none 消除<li> 标签默认样式 margin: xx auto 版心居中 width:100% 通栏 vertical-align 作用于行内元素 / 表格单元格ÿ…...
第 86 场周赛:矩阵中的幻方、钥匙和房间、将数组拆分成斐波那契序列、猜猜这个单词
Q1、[中等] 矩阵中的幻方 1、题目描述 3 x 3 的幻方是一个填充有 从 1 到 9 的不同数字的 3 x 3 矩阵,其中每行,每列以及两条对角线上的各数之和都相等。 给定一个由整数组成的row x col 的 grid,其中有多少个 3 3 的 “幻方” 子矩阵&am…...
JVM暂停(Stop-The-World,STW)的原因分类及对应排查方案
JVM暂停(Stop-The-World,STW)的完整原因分类及对应排查方案,结合JVM运行机制和常见故障场景整理而成: 一、GC相关暂停 1. 安全点(Safepoint)阻塞 现象:JVM暂停但无GC日志,日志显示No GCs detected。原因:JVM等待所有线程进入安全点(如…...
Map相关知识
数据结构 二叉树 二叉树,顾名思义,每个节点最多有两个“叉”,也就是两个子节点,分别是左子 节点和右子节点。不过,二叉树并不要求每个节点都有两个子节点,有的节点只 有左子节点,有的节点只有…...
Java多线程实现之Thread类深度解析
Java多线程实现之Thread类深度解析 一、多线程基础概念1.1 什么是线程1.2 多线程的优势1.3 Java多线程模型 二、Thread类的基本结构与构造函数2.1 Thread类的继承关系2.2 构造函数 三、创建和启动线程3.1 继承Thread类创建线程3.2 实现Runnable接口创建线程 四、Thread类的核心…...
