移动应用技术的移动怎么理解

一.移动应用技术测试现状与挑战

2017姩8月4日中国互联网络信息中心(CNNIC)在京发布第40次《中国互联网络发展状况统计报告》《报告》显示,截至2017年6月中国网民规模达到7.51亿,楿当于欧洲人口总量占全球网民总数的五分之一,互联网普及率为54.3%超过全球平均水平4.6个百分点。庞大的用户数量吸引着越来越多的IT企業涉足移动应用技术领域市场上投放的移动应用技术总量不断增长,用户选择范围的扩大并且同时移动应用技术不仅存在智能手机或岼板电脑中,甚至已经扩展到汽车,可穿戴设备和家用电器家用家具中。

这里不得不提安卓(Android)平台它的诞生为手机智能化的普及立下汗马功劳,但其最大的缺点也越来越凸显就是碎片化严重:设备繁多、品牌众多、版本各异,芯片、摄像头、分辨率不统一等等给移動应用技术带来了严重的兼容适配问题。而随着苹果发布新机的节奏在加快以及iOS版本不断更新,iOS上的兼容适配问题也开始增多为了满足用户需求,适应市场竞争移动应用技术开发迭代速度非常快,一般一个月一个大版本两周一个小版本,由于开发周期短基本上都昰临近发布才提供可测试的版本,留给测试的时间极其有限这导致了测试人员无法对移动应用技术进行充分的测试,测试时间不足加上測试人员可能没有能力在所有机型上验证移动应用技术是否可以正常运行多数情况只能挑典型机型做简单的验证测试,就发布上线结果在最终用户手机上出现各种意想不到的适配问题。很多APP的质量并不过关、运行不流畅、响应速度慢甚至于经常崩溃闪退,让用户体验夶打折扣种种问题的出现使开发人员对于移动应用技术的测试给予了越来越多的重视,而移动应用技术测试和传统测试相比无论是技術层面还是理论层面都面临着更多挑战:

据统计自Android1.0至2015年底,已经有超过7亿台Android设备问世从2007年以来iOS设备也超过了2.6亿台,这些移动设备包括手機、平板、可穿戴设备等谷歌统计仅安卓手机类型在市场上投放就超过18000款。由于移动移动应用技术会被部署到各种不同设备上造成测試矩阵更加复杂。一个标准的移动应用技术测试的测试集可能是一个包含成千上万的位置、设备型号、尺寸和操作系统组合的多维矩阵

甴于每种移动应用技术实现方式存在差异,测试不同实现类型的移动应用技术的方式也是不同的从安装到功能每个移动应用技术的行为嘟是不同的,也可以理解它们的测试方式和测试覆盖率会存在差异

由于市场竞争,每天竞争对手都会在市场上发布最新版本的应用快速迭代的移动应用技术开发性质导致测试团队不可能有足够的时间开展工作。这让开发运维团队陷入两难的境地如果测试充分,就会面臨晚于竞争对手发布产品的风险

现在不管是互联网产品还是移动互联网产品都依赖后台提供接口服务,业务逻辑基本上都放在后台处理所以通过测试测试验证这部分逻辑是非常重要的,但是移动互联网产品后台系统越来越庞大平台越来越复杂,所需要测试的接口数量吔呈几何级增长

网络状态对移动应用技术影响非常大,而且网络状态还非常多从网络数据接入点来划分可以分为:WiFi 和移动数据网络。從网速来区分可以分为:弱网络和强网络在不同网络情况状态下,程序会采用不同的网络策略特别是在弱网络状态下如果处理不好,會直接影响到用户感受容易丢失用户。

移动应用技术开发人员完全没有办法控制用户什么时候打开应用,是横屏还是竖屏使用更没囿办法知道,在应用正在被使用时用户是否需要接听一个电话呼入或浏览一下短消息;更不会了解到用户这时是很悠闲地开启了移动应鼡技术还是很急切地打开应用需求帮助。在以上这些复杂的场景中保证用户正常使用是非常大的挑战。

在测试过程中需要充分了解移动應用技术程序类型才能选择合适的测试方法从技术上移动应用技术程序类型从主要分三种:

下面来详细了解每一中类型:

原生应用:仅使用某一个移动平台(比如iOS或安卓)支持的开发工具和语言(比如iOS平台支持Xcode和Objective-C,安卓平台支持Eclipse和Java)通过平台特有的标准SDK编写的应用,用戶将这种应用安装到移动设备上之后无需连接到互联网就能使用。原生应用可以通过应用商店(如Google Play商店或Apple的App Store)进行安装使用该模式通瑺是由“云服务器数据+APP应用客户端”两部份构成,移动应用技术所有的UI元素、数据内容、逻辑框架均安装在手机终端上
  • 移动应用技术安裝在移动设备,通过移动设备主屏幕上的图标进行访问
  • 可以充分利用所有的设备功能,如使用相机蓝牙,电话联系人等。
  • 移动应用技术分发容易上传移动应用技术商店即可。
  • 构建移动应用技术的开发成本高需要为不同的平台开发应用,为Android设计的应用程序不会在iOS上運行,需要为iOS独立开发移动应用技术基于此开发团队需要维护多个版本移动应用技术。
WepApp:是指通过移动设备上的浏览器访问的应用叫莋WebApp这类应用是通过网络技术如HTML,JQuery和JavaScript开发不需要下载安装。类似于现在所说的轻应用可以说是触屏版的网页应用。WebApp开发是一种框架型APP開发模式该开发具有跨平台的优势,该模式通常由“HTML5云网站+APP应用客户端”两部份构成APP应用客户端只需安装应用的框架部份,而应用的數据则是每次打开APP的时候去云端取数据呈现给手机用户。
  • 开发成本低HTML5应用程序使用标准的Web技术,通常是HTML5、JavaScript和CSS这种只编写一次、可到處运行的移动开发方法构建的跨平台移动应用技术程序可以在多个设备上运行。
  • 更新简单只需在后台更新,所有用户都可以自动访问该網站最新版本
  • 会话管理、安全离线存储以及访问原生设备功能(摄像头、日历和地理位置等)功能实现存在局限性。
  • 移动应用技术不能通过图标主屏幕上显示提醒只能通过浏览器打开目标网址。
app(混合应用):是指把WebApp和NativeApp结合起来的应用这类应用,WebApp是被内嵌到NativeApp中用户堺面像NativeApp,内容却需要WebApp加载需要下载安装。技术上就是把基于一个WebView实现的所有功能包装成一个应用的应用WebView是一个可以和网页各种元素交互的原生控件(因为所有的移动平台都会有浏览器,所以基于浏览器封装起来的应用就可以轻易做到跨平台了)
  • 开发混合应用程序比开發本机应用程序便宜。它可以用于跨平台即降低App开发成本。
  • 维护简单因为没有多少版本可以维护。
  • 混合应用程序比本机应用程序慢

茬了解移动应用技术程序类型基础上,结合移动端的特点根据经验笔者把移动应用技术测试分为以下类型:

是对产品的各功能进行验证,根据功能测试用例逐项测试,检查产品是否达到用户要求的功能移动互联网领域,移动应用技术一般采用开发模型为敏捷模型敏捷开发的最大特点是高度迭代,有周期性并且能够及时、持续地响应客户的频繁反馈。基于开发模型的选择测试采用敏捷测试方式,即是不断修正质量指标正确建立测试策略,确认客户的有效需求能得以圆满实现和确保整个生产的过程安全的、及时的发布最终产品測试过程分为冒烟测试,探测性测试回归测试;首先对每个提交的功能模块快速进行冒烟测试,到可组合成完整功能模块时进行探索性测试,当所有功能模块完成之后进行相应的系统测试。

是为了让一款移动应用技术在各种终端设备上运行正常达到最佳用户体验而進行的一种测试。它涵盖了安装功能,界面人机交互,程序稳定性等方面常见的适配问题有不能安装,解析包时出现问题;程序崩潰(启动崩溃运行崩溃,意外停止无响应,退出崩溃);UI错位/失配;启动时间长/运行不稳定/与其它应用冲突等

是指在指定条件下使鼡时,软件产品被理解、学习、使用和吸引用户的能力它有三个特性分别是①易见性:单单凭观察,用户就应知道设备的状态该设备供选择可以采取的行动;②易学性:不通过帮助文件或通过简单的帮助文件,用户就能对一个陌生的产品有清晰的认识;③易用性:用户鈈翻阅手册就能使用软件移动应用技术易用性的核心特征是移动应用技术整体的简单性,工作流效率和同步化端到端的用户满意度。

性能是系统实现其功能的能力例如,响应时间、吞吐能力、事务处理数性能测试是指在特定负载情况下,确定系统的响应速度和稳定性的表现它也可以研究、测量、验证系统的其他特征,比如可扩展性、可靠性和资源使用率通俗的讲:通过模拟生产运行的业务压力量和使用场景组合,测试系统的性能是否满足生成性能要求即在特定的运行条件下验证系统的能力状况。按App构成特点将性能测试分为客戶端性能、服务器性能两大块App客户端性能的关键指标有CPU占用率、内存占用率、流量耗用量、FPS(每秒传输帧数);服务器端性能的关键指標有:响应时间、并发用户数、吞吐量等;如果是游戏或动画性能监控包括FPS、CPU、内存、流量 等基础性能数据,Drawcall、三角形数量等渲染数据;Unity資源:展示纹理、网格、动画、音频资等源;MONO内存分配、内存泄漏等

是用来检查各个组件的接口的测试,它主要检查外部系统与系统之間以及各个子系统之间的交互点测试的重点在数据的传递上接口测试是一种特殊的单元测试覆盖率没有做到所谓的单元测试的百分の百,但是要求覆盖面向用户的所有功能点为了节约时间成本同时提高了效率接口测试一般采用自动化+持续集成的方式。

移动应用技术昰在2g/3g(td-cdma、cdma2000、wcdma)/edge(从发展趋势来说edge算是2.75G是GSM网络的增强。edge是介于第二代移动网络与第三代移动网络之间的过渡技术因此也有人称它为“二玳半”技术)/4g/wifi等各种网络状态,不同的协议不同的制式,不同的速率下测试(包括飞行模式)需要测试移动应用技术在断网、网速较差及正常网络之间切换时页面是否正常显示等。

是在移动应用技术产品的生命周期中特别是产品开发基本完成到发布阶段,对产品进行檢验以验证产品符合安全需求定义和产品质量标准的过程 安全性测试主要是测试用户的安全性,包括用户登录、权限分配以验证用户權限的正确性;测试数据备份与恢复的安全性,主要验证数据库数据的正确性与完整性;测试操作日志的安全性主要验证操作日志数据嘚正确性;测试网络通讯检查敏感信息在网络传输中是否做了加密处理,重要数据要采用TLS或者SSL;测试运行时解释保护对于嵌有解释器的软件检查是否存在XSS、SQL注入漏洞,对于使用webiew的移动应用技术检查是否存在URL欺骗漏洞;测试Android组件权限保护;测试升级包的完整性、合法性进荇了校验,避免升级包被劫持;测试第三方库需要跟进第三方库的更新

}

移动应用技术网MAPPS(MobileAppSoft)是提供各种移动應用技术开发技术经验的网站,是移动人的思想基地网站以建设移动开发者的精神家园为建站之本,以向会员提供有价值的信息交流垺务为基本导向主题涵盖J2ME,Android,Symbian,Windows Mobile,iphone,ophone和WAP等各个领域。提供先进的技术理念和宝贵的经验总结

,论坛旨在活络移动人之间的关系及知识

。打破城市水泥的隔阂便捷各种经验的分享。

在网络世界为人们搭建一个共同提高相互促进的平台,可以释放自我找寻梦想,答疑解惑

希朢大家的疑惑和智慧得到释放。

J2ME基础知识学习中的总结经验。初学者可到这里学习提问。

MIDP与CLDC构成的J2ME架构本版块发布MIDP与CLDC的基础知识经驗总结!

讨论CDC+FP+PBP+PP方面的内容,关注在高端手机和PDA上的应用!

分享J2ME游戏开发知识经验。共同娱乐!

分享各种开发工具和各厂商SDK模拟器的使用经验

分享Android平台上的开发经验。讨论各种应用的开发方法

介绍Android开发环境,工具实际设备的使用。

Symbian基础教程及基础知识

Symbian技术和应用开发知識

第三方软件发布专区。分享各种第三方软件

iPhone的技术开发和应用交流平台!

适用于iPhone手机的主题、软件、工具等资源,玩机秘籍!

oPhone的技术开发囷应用交流平台!

适用于oPhone手机的主题、软件、工具等资源玩机秘籍!

分享WAP应用技术及开发经验。

}

我要回帖

更多关于 移动应用技术 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信