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工具包的文章,决定研究一番ÿ…...
DockerHub与私有镜像仓库在容器化中的应用与管理
哈喽,大家好,我是左手python! Docker Hub的应用与管理 Docker Hub的基本概念与使用方法 Docker Hub是Docker官方提供的一个公共镜像仓库,用户可以在其中找到各种操作系统、软件和应用的镜像。开发者可以通过Docker Hub轻松获取所…...

YSYX学习记录(八)
C语言,练习0: 先创建一个文件夹,我用的是物理机: 安装build-essential 练习1: 我注释掉了 #include <stdio.h> 出现下面错误 在你的文本编辑器中打开ex1文件,随机修改或删除一部分,之后…...

学习STC51单片机31(芯片为STC89C52RCRC)OLED显示屏1
每日一言 生活的美好,总是藏在那些你咬牙坚持的日子里。 硬件:OLED 以后要用到OLED的时候找到这个文件 OLED的设备地址 SSD1306"SSD" 是品牌缩写,"1306" 是产品编号。 驱动 OLED 屏幕的 IIC 总线数据传输格式 示意图 …...

04-初识css
一、css样式引入 1.1.内部样式 <div style"width: 100px;"></div>1.2.外部样式 1.2.1.外部样式1 <style>.aa {width: 100px;} </style> <div class"aa"></div>1.2.2.外部样式2 <!-- rel内表面引入的是style样…...
【C++从零实现Json-Rpc框架】第六弹 —— 服务端模块划分
一、项目背景回顾 前五弹完成了Json-Rpc协议解析、请求处理、客户端调用等基础模块搭建。 本弹重点聚焦于服务端的模块划分与架构设计,提升代码结构的可维护性与扩展性。 二、服务端模块设计目标 高内聚低耦合:各模块职责清晰,便于独立开发…...
Spring AI与Spring Modulith核心技术解析
Spring AI核心架构解析 Spring AI(https://spring.io/projects/spring-ai)作为Spring生态中的AI集成框架,其核心设计理念是通过模块化架构降低AI应用的开发复杂度。与Python生态中的LangChain/LlamaIndex等工具类似,但特别为多语…...
Device Mapper 机制
Device Mapper 机制详解 Device Mapper(简称 DM)是 Linux 内核中的一套通用块设备映射框架,为 LVM、加密磁盘、RAID 等提供底层支持。本文将详细介绍 Device Mapper 的原理、实现、内核配置、常用工具、操作测试流程,并配以详细的…...
Hive 存储格式深度解析:从 TextFile 到 ORC,如何选对数据存储方案?
在大数据处理领域,Hive 作为 Hadoop 生态中重要的数据仓库工具,其存储格式的选择直接影响数据存储成本、查询效率和计算资源消耗。面对 TextFile、SequenceFile、Parquet、RCFile、ORC 等多种存储格式,很多开发者常常陷入选择困境。本文将从底…...

代码规范和架构【立芯理论一】(2025.06.08)
1、代码规范的目标 代码简洁精炼、美观,可持续性好高效率高复用,可移植性好高内聚,低耦合没有冗余规范性,代码有规可循,可以看出自己当时的思考过程特殊排版,特殊语法,特殊指令,必须…...

海云安高敏捷信创白盒SCAP入选《中国网络安全细分领域产品名录》
近日,嘶吼安全产业研究院发布《中国网络安全细分领域产品名录》,海云安高敏捷信创白盒(SCAP)成功入选软件供应链安全领域产品名录。 在数字化转型加速的今天,网络安全已成为企业生存与发展的核心基石,为了解…...