【APP移动端性能测试】第一节.APP应用架构、环境和敏捷开发模型介绍

文章目录

  • 前言
  • 一、APP应用架构
  • 二、APP项目环境
  •       2.1 后端项目环境
  •       2.2 前端项目环境
  • 三、Scrum敏捷开发模型
  •       3.1 Scrum敏捷模型基础介绍
  •       3.2 Scrum敏捷开发开发流程
  • 总结


前言


一、APP应用架构

(1)APP应用架构


(2)app和wb应用框架的区别:

1.相同点:

  • APP和web使用的后端服务器是相同的
  • 前后端都使用HTTP协议进行交互(也有部分APP用socket来交互)

2.不同点:

  • APP是C/S结构,web浏览器是B/S结构
  • APP前后端交互的数据格式以json为主,web前后端交互的数据格式以HTML为主

解析:C/S结构和B/S结构

 C/S结构是一种软件系统体系结构,这种结构是将需要处理的业务合理地分配到客户端和服务器端,这样可以大大降低通信成本,但是升级维护相对困难。比如我们手机中安装的微信、qq、王者荣耀等应用程序就是C/S结构。

B/S结构是随着互联网的发展,web出现后兴起的一种网络结构模式。这种模式统一了客户端,让核心的业务处理在服务端完成。你只需要在自己电脑或手机上安装一个浏览器,就可以通过web Server与数据库进行数据交互。在手机或电脑上用浏览器上百度搜索、看新闻等就是在使用“B/S”结构进行数据交互。这种“B/S”结构的好处:维护和升级方式更简单,客户端是浏览器,基本不需要维护,只需要维护升级服务器端就可以。


二、APP项目环境

2.1 后端项目环境

一般公司内部开发、测试人员会使用不同的环境,以隔离工作过程中彼此之间的干扰。同时,上线给用户使用的产品也会单独部署环境。


后端项目环境的几种环境

(1)开发环境

指开发人员进行开发时调试运行的环境

(2)测试环境

提供测试人员使用,用于测试人员执行测试,回归缺陷。

(3)预发布环境

1.定义:

这个环境中,一般会连接生产环境的数据库,使用生产环境的数据来进行测试。

2.目的:

测试最新的代码,对于线上复杂数据的处理情况

3.注意点:

  • 预发布环境中只针对基本的业务进行测试
  • 测试写的业务操作时,只能使用自己构造的数据
  • 升级涉及到表结构变更时,可以将生产环境数据库数据备份到测试库中,升级并测试

(4)生产环境

指正式提供对外服务的环境,产品的实际用户使用的环境


注意:
预发布环境过后,正式发布生产环境之前,一般会进行灰度发布。

灰度发布定义:

由于一个项目,一般线上部署时有多台机器运行,所以灰度1台至三台,看看新功能是否oK,如果失败则只需要回滚几台,比较方便。

灰度发布注意点:

  • 一般情况下切一小部分流量
  • 验证时间一周至一个月之间
  • 如果运行无问题,在某个流量少的时刻,不停机更新服务器环境
  • 如果运行有问题,尽快定位问题,并修复问题;如果问题比较严重,需要回滚代码,保障线上用户正常使用

2.2 前端项目环境

(1)前台发布测试环境

1.打包提测:

  • IOS:IPA测试包
  • Android:APK测试包

2.内测发布平台(例如):

  • 蒲公英
  • fir.im

(2)前台发布生产环境

1.线上发布平台:

IOS: appstore、itools

Android:豌豆荚、360、各大手机厂商的发布平台等。

2.线上发布流程:

  • Apk/ipa测试完成
  • 提交应用市场审核
  • 添加渠道号
  • 渠道包测试
  • 正式上线

三、Scrum敏捷开发模型

3.1 Scrum敏捷模型基础介绍

敏捷开发模型定义:

是用户的需求进化为核心,采取迭代、循序渐进的方式来进行软件项目的开发。

  • 即将项目切分为多个子项目,每个子项目单独发布,保证软件较早可用
  • 及时收集用户反馈,调整未发布的项目,满足用户的实际需要
  • 代表性的敏捷开发模型:scrum

Scrum的关键概念和三种角色

关键概念:

  • sprint:一个最小的开发周期(一个迭代周期),需求分析-设计-编写-测试-发布
  • backlog:产品功能列表。

scrum相关的3个角色:

  • ProductManager产品负责人:收集需求,转化为产品功能列表,并进行优先级的排序
  • Scrum Master项目经理:保障项目的稳定运行,排除干扰
  • 项目组:
  •   开发人员
  •   测试人员
  •   UI设计人员

3.2 Scrum敏捷开发流程

scrum敏捷开发流程:

1、产品负责人收集需求,转化为产品功能列表

2、启动迭代的计划会,评审产品功能列表,挑选优先级高的需求作为迭代任务

3、项目组成员完成迭代任务的开发、测试工作

4、迭代结束后,开评审会,评估当前迭代任务的完成情况

5、开反思会。总结迭代过程中的好的与不好的地方。

下一迭代,循环2-5步

总结

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

【4003】基于springboot实现的线上阅读系统

作者主页:Java码库 主营内容:SpringBoot、Vue、SSM、HLMT、Jsp、PHP、Nodejs、Python、爬虫、数据可视化、小程序、安卓app等设计与开发。 收藏点赞不迷路 关注作者有好处 文末获取源码 技术选型 【后端】:Java 【框架】:spring…

DNS域名解析----分离解析、多域名解析、父域与子域

1 理论部分 1.1 分离解析 DNS的分离解析,是指根据不同的客户端提供不同的域名解析记录。来自不同地址的客户机请求解析同一域名时,为其提供不同的解析结果。也就是内外网客户请求访问相同的域名时,能解析出不同的IP地址,实现负载…

苍穹外卖---新增员工(P16-P20)

一、需求分析和设计 (1)产品原型 一般在做需求分析时,往往都是对照着产品原型进行分析,因为产品原型比较直观,便于我们理解业务。后台系统中可以管理员工信息,通过新增员工来添加后台系统用户。 新增员工…

System.Data.OracleClient.OracleException:“ORA-12571: TNS: 包写入程序失败

System.Data.OracleClient.OracleException:“ORA-12571: TNS: 包写入程序失败 解决方法: 首先%oracle_home%/network/admin下的sqlnet.ora文件,把SQLNET.AUTHENTICATION_SERVICES (NTS)加个 # 注释掉就好了

防爆监测系统:工业安全百科

防爆监测系统,作为现代工业安全领域的重要组成部分,对于预防和控制爆炸事故具有不可替代的作用。该系统集成了先进的传感技术、信号处理技术以及自动控制技术,实现对工业生产环境中潜在爆炸因素的实时监测和预警。 防爆监测系统能够精确识别…

RIP与OSPF发布默认路由(华为)

#交换设备 RIP与OSPF发布默认路由 合理使用默认路由可以很大程度上减少本地路由表的大小,并可以较好的隐藏一个网络中的路由信息,保护自身网络的隐秘性 另外如果在同一个路由器两端使用了不同的路由协议,那么如果不做路由引入或者发布默认…

vscode插件开发之 - Treeview视图

一些测试类插件,往往需要加载测试文件,并执行这些测试文件。以playwright vscode为例,该插件可以显示目录下所有的测试文件。如下图所示,显示了tests目录下的所有xxx.spec.js文件,那么如何在vscode插件开发中显示TreeV…

解锁TikTok内容趋势——高效获取TikTok标签信息接口

一、引言 在TikTok这个全球热门的短视频平台上,标签(Hashtags)是用户和内容创作者连接、发现新内容的重要工具。为了帮助品牌、市场分析师、内容创作者等更好地理解和利用TikTok上的内容趋势,我们推出了一款全新的接口服务&#…

正则表达式之三剑客grep

正则表达式匹配的是文本内容,linux的文本三剑客 都是针对文本内容 grep 过滤文本内容 sed 针对文本内容进行增删改查 awk 按行取列 文本三剑客都是按行进行匹配。 grep grep 的作用就是使用正则表达式来匹配文本内容 选项: -m …

赋能AI未来,景联文科技推出高质量亿级教育题库、多轮对话以及心理大模型数据

当前,大模型正如雨后春笋般不断涌现,不断推动着大模型产业的应用实践进入加速发展的新阶段。 景联文科技是AI数据服务公司,提供海量优质大模型数据集,涵盖文本、图像、视频、音频等多类型数据,致力于为不同训练阶段的算…

注意力机制简介

为了减少计算复杂度,通过借鉴生物神经网络的一些机制,我们引入了局部连接、权重共享以及汇聚操作来简化神经网络结构。神经网络中可以存储的信息量称为网络容量。一般来讲,利用一组神经元来存储信息的容量和神经元的数量以及网络的复杂度成正…

【机器学习300问】126、词嵌入(Word Embedding)是什么意思?

人类的文字,作为一种高度抽象化的符号系统,承载着丰富而复杂的信息。为了让电脑也能像人类一样理解并处理这些文字,科学家们不断探索各种方法,以期将人类的语言转化为计算机能够理解的格式。 一、One-Hot编码的不足 在自然语言处…

原生js制作svg 图标生成动态 tab栏切换效果(结尾附代码)

svg 图标生成动态 tab 栏 先看效果: 我想做一个 tab 栏比较美观的效果,当然切换的数据可以自己做一下,这里不演示,说一下特效如何制作。 当我点击时要将空心变为实心的这么一个效果,所以准备两个五角星样式一个是空…

【AI大模型】在健康睡眠监测中的深度融合与实践案例

文章目录 1. 应用方案2. 技术实现2.1 数据采集与预处理2.2 构建与训练模型2.3 个性化建议生成 3. 优化策略4. 应用示例:多模态数据融合与实时监测4.1 数据采集4.2 实时监测与反馈 5. 深入分析模型选择和优化5.1 LSTM模型的优势和优化策略5.2 CNN模型的优势和优化策略…

DeepSpeed Pipeline并行

DeepSpeed为了克服一般Pipeline并行的forward时weights,和backward时计算梯度的weights, 二者不相同的问题,退而求其次,牺牲性能,采用gradient-accumulate方式,backward时只累积梯度至local,并不更新weights&#xff1…

手机录屏声音怎么录?2个小妙招教会你

手机录制好的视频怎么没有声音?你是否也遇到了这个难题?在日常生活中,手机录屏功能已经成为我们生活和工作中的得力助手。而录屏的声音,作为录屏功能的重要组成部分,更是为我们的录制体验增添了不少色彩。那么&#xf…

如何提升外链网站的收录率?

要提高外链网站的收录率,要明确的一点是,被收录的外链才能发挥最大的作用,因此,提升收录率是首要任务。一个有效的方法是使用GPC爬虫池,这样可以大幅度提高谷歌蜘蛛对众多外链网站页面的抓取频率 通过GPC爬虫池的引导…

基于CLIP 建模用于假图像检测探索与应用

概述 论文地址:https://arxiv.org/pdf/2402.12927 源码地址:https://github.com/sohailahmedkhan/CLIPping-the-Deception 本研究探讨了如何使用 CLIP 这一图像和语言的多模态底层模型来检测伪造图像。这项研究的一个重要创新点是,它建立了…

Linux C编译器从零开发三

AST语法树 BNF抽象 expr equality equality relational ("" relational | "!" relational)* relational add ("<" add | "<" add | ">" add | ">" add)* add mul ("" …

2024年光电信息、光学工程与机器视觉国际学术会议(OIOEMV 2024)

2024年光电信息、光学工程与机器视觉国际学术会议(OIOEMV 2024) 2024 International Conference on Optoelectronic Information, Optical Engineering and Machine Vision 会议地点&#xff1a;厦门&#xff0c;中国 网址&#xff1a;www.oioemv.com 邮箱: oioemvsub-conf…