App测试入门

APP测试基本流程以及APP测试要点梳理,成功入职就靠它了 APP要做哪些测试?APP测试要注意哪些问题?对于移动测试,测试员不得不基于用户移动使用模式考虑移动相关的功能。而针对手机应用软件APP的系统测试。我们通常从如下几个角度开展:功能测试(流程测试、功能点测试)、兼容性测试、交叉测试、安装卸载测试(包括应用的升级)、压力测试(接口压力测试)、安全测试等等。命运给你一个较低的起点,是想让你用你的一生去奋斗出一个绝地反击的故事。这个故事关于独立,关于梦想,关于勇气,关于坚忍。鸡汤再有理,终究是别人的总结。 阅读详情

App测试基础知识

App测试,是指对移动应用软件(如手机app、平板app等)进行全面和系统的测试,以确保其功能、性能、安全性、稳定性、兼容性等方面能满足用户的使用需求和期望。

App常见运行系统

  • IOS系统:

    • IOS系统是苹果公司推出的一款封闭式手机操作系统。

    • 其主要开发语言是Objective-C、Swift。

    • 只能运行在苹果的移动设备上。

    • IOS系统的版本只能升级,不能降级。

  • Android系统:

      由于Android系统开放源代码的特性,各个手机制造商可以基于Android系统开发出自己的定制系统,这些定制系统在保留了Android系统核心功能的基础上,增加了各自的特色功能和用户界面设计。

      eg:
    • 三星-One UI:在Android基础上增加了一些特有的功能,如边缘屏幕、SPen笔功能等。

    • 华为-EMUI:它添加了许多华为自有的功能,如一键优化、手机克隆等。

    • 小米-MIUI:它改变了Android的许多默认界面,同时增加了许多小米特色的功能,如安全中心、小爱同学等。

    • OPPO-ColorOS:它在Android基础上进行了大量的界面和功能修改,例如添加了OPPO特有的智能助手、游戏空间等。

    • ...

    • Android系统是谷歌公司以Linux为核心,开发、发行的一个智能的、开放式的软件平台。

    • 其主要开发语言是Java、Kotlin。

    • 可运行在各品牌的移动设备上。

    • Android系统的版本可升、可降。

    • 在设计上,Android系统明显更多样化,辅助工具也明显多于IOS。

    • 在兼容性问题上,Android也需要比IOS考虑得多一些。

  • HarmonyOS系统

    • HarmonyOS系统是华为自主研发的操作系统,采用了全新的微内核架构。

    • 为了保证应用的兼容性,鸿蒙系统设计了一套兼容层,可以兼容Android应用。

  • Windows系统

  • .....

测试包安装

  • IOS安装:

    • 安装包后缀:ipa

    • 可通过Xcode、蒲公英等安装

    • ios测试包安装后,需要信任此App

  • Android安装:

    • 安装包后缀:apk

    • 可通过浏览器、ADB工具等安装

App专项测试

App测试和web的测试之间的主要区别在于用户与软件交互的方式,用户在App上的操作方式和在浏览器上的操作习惯也大不相同。App 需要考虑各种类型的网络状况,还有电话、短信等中断性的事件。

所以在测试App时,我们不仅需要关注功能测试,还需要关注App的专项测试:

  • 性能测试:包括测试App在各种网络环境下的加载速度,以及在多任务处理时的表现。

  • 安全性测试:确保App在数据传输、存储等方面的安全性,防止数据泄露或被恶意攻击。

  • 稳定性测试:测试App在各种极端情况下(如网络不稳定、内存不足等)的表现,以及其崩溃恢复的能力。

  • 兼容性测试:测试App在各种设备、操作系统、浏览器等不同环境下的表现。

  • 用户体验测试:评估App的易用性、交互性、视觉体验等,以提升用户满意度。

  • ....

App测试常见缺陷

  • 功能性缺陷:当App的某个功能无法正常工作时,通常需要开发人员对代码进行调试和修复。例如,如果一个按钮无法正确触发事件,可能需要检查事件处理代码,确认是否存在错误或遗漏。

  • 性能问题:如果App加载缓慢或响应迟钝,可能需要对App进行性能优化。这可能包括优化代码,减少不必要的计算和内存使用,或者升级服务器配置。也可以考虑使用懒加载、缓存等技术来提升性能。

  • 兼容性问题:如果App在某些设备或操作系统上无法正常运行,可能需要对App进行兼容性测试和优化。这可能包括使用更通用的代码和API,或者为特定的设备和系统提供特殊的适配方案。

  • 安全性问题:如果App存在数据泄露或被攻击的风险,需要对App进行安全性加固。这可能包括加密数据,验证用户输入,防止SQL注入和XSS攻击,使用HTTPS等安全协议,以及定期更新和打补丁。

  • 用户体验问题:如果App的操作流程复杂,界面设计不友好,可能需要对App进行用户体验优化。这可能包括简化操作流程,优化界面布局和颜色,提供更清晰的提示和反馈等

App特有性bug举例:

  • 当用户在使用应用时接听来电,应用崩溃

  • 当用户切换至另一应用时崩溃

  • 当用户未主动使用它时,消耗系统资源

  • 当用户离开应用并在稍后返回时,丢失用户的进度

  • 当屏幕在横向和纵向之间旋转时,崩溃或丢失用户的进度

  • 当用户切换界面时,卡顿

  • ...

App常用测试工具

  • Charles

是我们几乎最常用的测试工具,在做App测试时,我们为了分析App端与服务器端的网络通讯协议,常常需要截取网络封包来分析,Charles提供了强大的功能,可以供我们分析网络请求 ,例如:

  • 查看网络请求信息

  • 修改网络请求和返回

  • 模拟弱网环境

  • 简单的压力测试

  • ...

  • ADB

ADB(Android Debug Bridge),安卓调试桥,用于连接电脑与安卓手机,管理安卓设备的工具。

ADB常用命令:

adb devices                                              # 用于查看电脑当前连接的安卓设备
adb install apk文件包                                     # 在安卓设备上安装app
adb uninstall app软件包名                                 # 卸载app
adb logcat                                               # 查看log
adb kill-server                                          # 终止adb服务进程
adb shell                                                # 进入adb运行环境
adb shell "top -n 1|grep package_name"                   # 查看CPU占用率
adb shell dumpsys batterystats > batterystats.txt        # 采集耗电数据
...

mac安装ADB工具教程参考:Mac安装并使用ADB_adb for mac-优快云博客

  • Testin

Testin是集App测试、Web测试为一体的自动化测试系统,可实现7X24不间断的测试,节约测试成本,全方位提高应用的可靠性。

App测试流程要点解析

  • 集成测试:

一个App中功能繁多,为了提高功能发布效率,常将App中的各个功能模块,分别进行开发、测试,然后再将各模块的新功能代码合并到一起。

在功能测试阶段,我们都是在各自模块的新功能代码中进行测试,在各个模块单独测试通过之后,各模块的新功能代码将合并,此时我们将进行集成测试,再次验证各自的新功能及各个模块之间的交互是否正常,以确保各个模块能够正常协同工作,提供预期的功能。

  • 渠道包测试:

在Android应用开发中,由于存在多个应用市场和发布平台,开发者通常需要为每个平台创建一个定制的应用程序包。这些定制的应用程序包可能会包含一些特定的配置、插件或SDK,以满足该平台的特定要求。这些定制的应用程序包被称为渠道包。

渠道包测试是针对不同发布渠道定制的应用程序包进行的测试,确保在不同的发布平台上,应用程序都能正常运行并提供一致的用户体验。

  • BAT测试:

对App进行基础功能验证,确保基本功能可用。此阶段执行的测试用例是最核心的用例,因此用例数量非常精简,主要用于进行快速的回归测试。

App测试的挑战和发展趋势

挑战

  • 设备和平台的多样性

移动设备的品牌、型号、屏幕尺寸、分辨率、操作系统及其版本等因素都非常多样化,这对App的兼容性测试提出了很大的挑战。

  • 操作系统的更新频繁

移动操作系统经常会进行更新和升级,这可能导致App出现兼容性问题。

  • 网络环境的不稳定

移动设备的网络环境相比桌面设备来说更不稳定,可能会频繁切换网络,或者网络信号弱等,这对App的网络性能和稳定性提出了高要求。

  • 测试资源的限制

与桌面软件测试相比,移动App测试通常需要更多的设备和更复杂的测试环境,可能会导致测试资源的短缺。

  • 安全性和隐私问题

移动设备通常会存储大量的个人信息,如联系人、照片、位置信息等,这使得App在处理这些信息时需要更加小心,防止数据泄露。

  • 用户体验的挑战

移动设备的操作方式(如触屏、重力感应等)和使用场景(如移动中、户外、噪音环境等)与桌面设备有很大的不同,这对App的用户体验设计和测试提出了新的挑战。

  • 测试自动化的难度

由于移动设备的特殊性,App测试的自动化往往比桌面软件测试更加困难。

  • ...

发展趋势

  • 测试自动化

由于移动设备种类繁多,手动进行全面的测试工作既耗时又耗力。因此,测试自动化被看作是提高测试效率和质量的关键。许多工具和框架(如Appium、Selenium等)都在支持移动App自动化测试。

  • 云测试:云测试能提供各种设备和环境,方便进行大规模和全面的测试。随着云计算的发展,云测试可能会成为主流。

  • AI和机器学习

随着人工智能和机器学习技术的发展,它们开始被应用到App测试中。例如,可以利用机器学习分析测试结果,预测和定位缺陷;或者使用AI自动生成测试用例。

  • ...

Katalon Web UI、API和Mobile App自动化测试工具入门 文章目录Katalon Web UI、API和Mobile App自动化测试工具入门前言安装KatalonKatalon HelpTest CaseSpy WebRecord WebAPI TestKatalon命令行Katalon与Jenkins集成 Katalon Web UI、API和Mobile App自动化测试工具入门 前言 最近偶然知道了Katalon,试用了一下,发现真是个好用的自动... 阅读详情

相关推荐

【软件测试】面试题之APP测试篇

App 测试,即移动应用测试,是指在移动设备上对移动应用(如智能手机或平板电脑上的应用程序)进行的一系列测试,以确保其功能、性能、安全性和用户体验符合预期标准。App 测试可以包括手动测试和自动化测试,涉及多个方面,如界面测试、功能测试、性能测试、安全性测试、兼容性测试等。确定应用的性能基准,包括理想的响应时间和内存使用门槛。这些基准应基于用户的期望和业务需求。

weixin_46453070的博客 1466

APP测试基础知识

APP测试基础知识

weixin_48745280的博客 335

App测试基础

主要是针对从事App测试的爱好者小白

APP 测试新手入门

首先:APP界面元素介绍(偏向产品的基础知识) 一.各种bar(栏): 1.status bar状态栏(时间,电量,信号的,未读信息提示)、navigation bar导航栏; 2.tab bar标签栏:即页面底部的主菜单栏, 一般是3-5个,如果超过5个,考虑将第5个图标用给更多表示tool bar工具栏,serach bar搜索栏 + scope bar 范围栏 ,范围栏一般是和搜索栏一起出...

surprise0615的博客 495

用HFSS复现经典论文:从零搭建带孔缝屏蔽箱体模型(附完整建模步骤与避坑指南)

本文详细介绍了如何使用HFSS电磁仿真软件复现经典论文中的带孔缝屏蔽箱体模型,包括从零搭建模型、设置激励与边界条件、求解优化及结果验证的全过程。特别提供了建模中的布尔运算陷阱、激励设置技巧等实操难点的避坑指南,帮助工程师和学生深入理解电磁屏蔽效能研究。

weixin_30530339的博客 160

Python逆向实战:突破PDD长连接抓包的技术解析

本文详细解析了如何通过Python逆向技术突破PDD长连接抓包的难点,包括分析PDD的网络机制、绕过SSL证书验证以及完整抓包实战流程。文章重点介绍了使用Frida和VAXposed工具解决长连接和SSL Pinning问题,并提供了Python代码示例和数据分析方案,帮助开发者高效抓取PDD数据。

weixin_28678151的博客 1224

APP测试全攻略:一文读懂,从零基础到精通的必备知识点与测试流程

专项测试通常包括性能测试、可靠性测试、安全测试、可服务性测试等多种类型,它们共同构成了对产品或系统全面、深入的评估体系。动画其实是由一张张画出来的图片连贯执行产生的效果,当一张张独立的图片切换速度足够快的时候,会欺骗我们的眼睛,以为这是连续的动作。在APP项目中基于手机电量与流量的考虑,使用的都是push方式进行消息推送,因此又叫Push消息。2、针对不同的发布平台,在软件包中加入对应的平台ID(渠道ID),上传到发布平台。C/S(Client/Server):即客户端/服务器,需要下载安装客户端。

m0_64146991的博客 2919

工程经验分享:PCIE(1)

本文介绍AXI Bridge For Pcie Express Gen3 Subsystem 的使用方法。这个IP兼具简单与实用性,将PCIE协议层实现于内部,仅留出AXI接口供开发者使用。开发者不需要处理复杂的PCIE协议数据,只需要对AXI总线有所了解即可,十分符合Xilinx一贯的开发风格。本文无关PCIE协议本身,仅分享实用性的工程经验,以PCIE IP为核心,一步一步搭建一个简单的子系统,以此说明用法。文中所有内容均已通过项目检验。

weixin_42415266的博客 3844

APP测试的入门书籍有哪些?

关于APP测试,书籍并不多,就那么几本,我结合豆瓣的评分,去介绍一下这几本关于APP测试的书籍,都是比较入门的哦,相关的APP测试的资料,我放在文末的链接里,自行下载就行了。 1、大话移动APP测试:Android与 iOS应用测试指南 作者:陈晔 出版社:清华大学出版社 副标题:Android与 iOS应用测试指南 出版年:2014-7-7 豆瓣评分:7.6分 2、移动App测试实战 作者:...

qq_42606738的博客 645

【同花顺公式编辑教程】第4章 功能函数

本章节主要给出大部分能够运行且常用的同花顺指标编辑器提供的函数。其中,计算类函数不作演示,绘图类函数提供示例及示例运行结果。

LiaoYi2016218的博客 2万+

YOLO12涨点改进| 损失函数改进篇 |AAAI 2025| 一种小目标检测SDLoss损失函数,解决现有损失函数对不同目标尺度敏感度不足的局限,提高了网络检测不同尺度目标的敏感能力,助力高效涨点

本文提出了一种改进的小目标检测方法SDLoss,通过动态调整尺度损失与位置损失的权重,优化了YOLOv12模型的性能。针对红外小目标检测中存在的两个主要问题:1)标准卷积难以捕捉目标的高斯空间分布特性;2)现有损失函数对不同尺度目标的敏感度不足,研究团队开发了Pinwheel-shaped卷积(PConv)和Scale-based Dynamic损失函数(SDLoss)。PConv通过不对称卷积核设计显著提升感受野,SDLoss则根据目标大小动态平衡尺度与位置损失的影响。

Ai缝合怪、助力小伙伴高效发论文 238

app测试入门

1、安装、运行、卸载测试 验证App是否能正确安装、运行、卸载以及操作过程和操作前后对系统资源的使用情况主要包括: 1)检测软件是否能正确安装、运行、卸载 2)安装、卸载、更新错误报告 3)App是否能正常启动正常运行,评估操作前后CPU、Memory、内存占用、Storage、磁盘占用等系统资源的使用情况。 2、升级、更新测试 新版版发布后,配合不同网络环境的自动更新提示及下载、安装、更新、启动、运行的验证测试。 1)测试升级后能否正常启动、运行。 2)测试升级后的功能是否与需求说明一样。 3)升...

210

TPAMI 2025 | 从缺失碎片到杰作:基于上下文自适应扩散的图像修复

图像修复是一项具有挑战性的任务,尤其是要确保生成的内容与图像的现有部分无缝融合。尽管最近的扩散模型展现出了潜力,但它们在保持已知区域和未知(缺失)区域之间的连贯性方面常常遇到困难。这个问题源于扩散过程中缺乏明确的空间和语义对齐,导致生成的内容无法与原始图像平滑融合。此外,扩散模型通常依赖全局学习分布,而非局部特征,这使得生成的图像部分与现有图像部分之间存在不一致。在这项工作中,作者提出了ConFill,这是一个新颖的框架,引入了上下文自适应差异(CAD)模型,以确保在整个扩散过程中,已知区域和未知区域的中间

小白学视觉 240

App自动化测试入门:APP测试的定义及环境搭建处理

本文从零开始,介绍了App自动化测试的定义和环境搭建步骤。通过安装Java开发环境、Android开发环境和Appium,配置Android虚拟设备和Appium Server,以及编写和运行测试脚本,你可以开始进行App自动化测试了。希望本文能对你入门App自动化测试有所帮助。

2301_79535544的博客 861

【深度学习驱动流体力学】OpenFOAM目录流体力学求解器汇总介绍

下面这些目录结构和其中的求解器和工具展示了OpenFOAM作为一个功能强大且广泛应用的开源CFD软件框架的多样性和灵活性。每个求解器都专门用于解决不同类型的流体动力学问题,从基础的流动模拟到复杂的多相流动和燃烧模拟等各种应用场景。

源代码杀手的博客 1186

GeoServer改造Springboot源码一(公共部分)

今天开始开启关于GeoServer的一个全新系列,主要是把改造Springboot后的详细代码粘贴出来,此文应配合《》系列共同阅读,按照前系列的时间顺序结合此系列的源码展示可以快速构建GeoServer功能的二次封装的后端系统。

龙井的专栏 1903

App测试大纲:全网最全核心知识点解析,一篇全部搞定!(入门)

​ ADB全称为Android Debug Bridge,是Android SDK(安卓的开发工具)中的一个工具,起到调试桥的作 用,是一个客户端-服务器端程序。其中客户端是用来操作的电脑服务端是Android设备。可以直接操作管理Android模拟器或者真实的Android设备(真机)

林十一npc的博客 1417

汉书HE8,好用的汇编代码编写工具

汉书HE8,好用的汇编代码编写工具早期编写汇编代码所用功能强大

App自动化测试入门:APP测试的定义及环境搭建处理!

App测试是指通过模拟用户操作和行为,对移动应用进行功能和性能等方面的验证,以确保应用达到预期的质量标准。自动化测试则是指使用工具或脚本自动执行测试用例,以减少人工测试的工作量和提高测试效率。本文从零开始,介绍了App自动化测试的定义和环境搭建步骤。通过安装Java开发环境、Android开发环境和Appium,配置Android虚拟设备和Appium Server,以及编写和运行测试脚本,你可以开始进行App自动化测试了。希望本文能对你入门App自动化测试有所帮助。

m0_58026506的博客 433

VC中sqlite的使用

在VC中对sqlite的使用,实现数据库大批数据的快速插入,读取数据库中的数据在ListCtrl中显示

温度PID控制PLC程序

温度PID稳定控制程序,适用于欧姆龙PLC,对其他PLC也具有很大参考价值

app测试的思维导图和测试点,零基础入门到精通,收藏这篇就够了

APP测试点(思维导图)目录1、功能性测试2、UI测试3、兼容性测试4、安全性测试5、消息推送测试6、前后台切换测试7、异常中断测试8、网路环境测试9、性能测试10、关于APP测试1、功能性测试2、UI测试3、兼容性测试4、安全性测试5、消息推送测试6、前后台切换测试7、异常中断测试8、网路环境测试9、性能测试10、关于APP测试这两年,IT行业面临经济周期波动与AI产业结构调整的双重压力,确实有很多运维与网络工程师因企业缩编或技术迭代而暂时失业。

Libra1313的博客 976

SAP B1中文培訓教材_SDK

公司内部培训资料,对开发工具 ,DIAPI, UIAPI,Add-ON有详细解说

【APP自动化测试】Monkey测试入门

Monkey测试入门 今天开始学习monkey,记录一下整个流程一遍后面温习 本文目录:[TOC] - 测试步骤 - 常用命令 - 参数详解 测试步骤: 1. 安装JDK及SDK并且配置其环境: 1.1 JDK安装及java环境配置 首先下载JDK,解压到本地,本文解压到E盘根目录; 之后右键我的电脑->属性->高级

1万+

app测试环境搭建,零基础入门到精通,收藏这篇就够了

他告诉我们说在这个文件中的80行,我们直接点击这个链接,无法点击的就按照他说的位置找到,找到以后我们找到第80行,我们把这一行直接注释掉,下面的这个地方改成127.0.0.1,这个地方是连接的IP地址,如果是模拟器就是127.0.0.1,如果是真机的话就去网络里找一下自己手机的IP地址填进去就行了。兼容测试:手机厂商兼容(华为,小米,vivo,oppo,魅族,荣耀,一加),系统版本兼容,网络兼容性,屏幕分辨率的兼容,与手机已有应用兼容性,与系统设备兼容性(字体、语言、方向锁定、主题)

Javachichi的博客 1270

APP测试入门之功能测试

基本功能:检查APP是否完成需求中所有功能模块 逻辑测试:根据需求,对所有功能涉及的逻辑进行测试(包括所有正常流程和异常流程) 边界值测试:很常见的测试点,但是真的很容易被开发忽略(eg:字数超长出现覆盖重叠、显示不全或是UI错乱等现象) 横竖屏切换测试:APP中很多页面只支持竖屏,除非一些特殊的功能,比如播放视频页 权限测试:涉及到获取系统权限问题,需要考虑未允许权限的情况(eg:相册和相机权限)尤其是iOS14以上的系统,注意允许部分权限的情况 易用..

dou_being的博客 516
上一篇: 前端性能测试工具-lighthouse
下一篇: Pipenv环境配置+Pytest运行
sssammmm
博客等级 码龄9年 369粉丝 42原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值