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工具包的文章,决定研究一番ÿ…...
RestClient
什么是RestClient RestClient 是 Elasticsearch 官方提供的 Java 低级 REST 客户端,它允许HTTP与Elasticsearch 集群通信,而无需处理 JSON 序列化/反序列化等底层细节。它是 Elasticsearch Java API 客户端的基础。 RestClient 主要特点 轻量级ÿ…...

解决Ubuntu22.04 VMware失败的问题 ubuntu入门之二十八
现象1 打开VMware失败 Ubuntu升级之后打开VMware上报需要安装vmmon和vmnet,点击确认后如下提示 最终上报fail 解决方法 内核升级导致,需要在新内核下重新下载编译安装 查看版本 $ vmware -v VMware Workstation 17.5.1 build-23298084$ lsb_release…...

HTML 列表、表格、表单
1 列表标签 作用:布局内容排列整齐的区域 列表分类:无序列表、有序列表、定义列表。 例如: 1.1 无序列表 标签:ul 嵌套 li,ul是无序列表,li是列表条目。 注意事项: ul 标签里面只能包裹 li…...
基于Uniapp开发HarmonyOS 5.0旅游应用技术实践
一、技术选型背景 1.跨平台优势 Uniapp采用Vue.js框架,支持"一次开发,多端部署",可同步生成HarmonyOS、iOS、Android等多平台应用。 2.鸿蒙特性融合 HarmonyOS 5.0的分布式能力与原子化服务,为旅游应用带来…...

MODBUS TCP转CANopen 技术赋能高效协同作业
在现代工业自动化领域,MODBUS TCP和CANopen两种通讯协议因其稳定性和高效性被广泛应用于各种设备和系统中。而随着科技的不断进步,这两种通讯协议也正在被逐步融合,形成了一种新型的通讯方式——开疆智能MODBUS TCP转CANopen网关KJ-TCPC-CANP…...
【决胜公务员考试】求职OMG——见面课测验1
2025最新版!!!6.8截至答题,大家注意呀! 博主码字不易点个关注吧,祝期末顺利~~ 1.单选题(2分) 下列说法错误的是:( B ) A.选调生属于公务员系统 B.公务员属于事业编 C.选调生有基层锻炼的要求 D…...
[Java恶补day16] 238.除自身以外数组的乘积
给你一个整数数组 nums,返回 数组 answer ,其中 answer[i] 等于 nums 中除 nums[i] 之外其余各元素的乘积 。 题目数据 保证 数组 nums之中任意元素的全部前缀元素和后缀的乘积都在 32 位 整数范围内。 请 不要使用除法,且在 O(n) 时间复杂度…...
Windows 下端口占用排查与释放全攻略
Windows 下端口占用排查与释放全攻略 在开发和运维过程中,经常会遇到端口被占用的问题(如 8080、3306 等常用端口)。本文将详细介绍如何通过命令行和图形化界面快速定位并释放被占用的端口,帮助你高效解决此类问题。 一、准…...

数据分析六部曲?
引言 上一章我们说到了数据分析六部曲,何谓六部曲呢? 其实啊,数据分析没那么难,只要掌握了下面这六个步骤,也就是数据分析六部曲,就算你是个啥都不懂的小白,也能慢慢上手做数据分析啦。 第一…...

ubuntu中安装conda的后遗症
缘由: 在编译rk3588的sdk时,遇到编译buildroot失败,提示如下: 提示缺失expect,但是实测相关工具是在的,如下显示: 然后查找借助各个ai工具,重新安装相关的工具,依然无解。 解决&am…...