移动应用如果有缺陷或者慢,用户不会费工夫让你去修补的。相反,他们会把它删掉,然后下载另一个应用来取代它。显然,这种个人使用的惯常做法会给企业移动应用部署造成严重破坏,令软件测试和质量保证总监如坐针垫。这是软件测试ISV Perfecto Mobile的产品策略总监Eran Kinsbruner的说法。
“用户的忍耐程度比桌面时代要低,”Kinsbruner说:“采用移动应用的最终用户对品质、可用性还有最重要的性能有着很高的期望。”
在本次问答录中,他讨论了移动应用开发的趋势,如测试趋势、何时需要进行人工测试,云提供商的移动测试责任等。
在测试应用是否能在多个场景的真实设备中运行时,你看到的最常见的错误是什么?
Eran Kinsbruner: 由于缺乏应用优化而没有关注糟糕的应用性能,以及不重视不同设备不同操作系统不同网络条件下的行为。(你必须能)模仿运行在真实移动设备上跑在特定移动OS里的真实的原生应用。
什么情况下需要进行人工移动性能测试,为什么?
Kinsbruner:在制定移动应用测试策略时,把人工测试场景和互操作性测试纳入测试范畴非常重要。测试移动应用的过程中测试团队应该测试应用在执行时有可能发生的不同事件—如来电、短信、电池电量低等,像电子邮件或漫游这类的提醒。近来,随着技术的发展,移动用户还会使用定位及语音相关等应用—这些都需要复杂得多的用例,也可以进行人工测试(比如像Google Maps这类应用是通过最终用户获得有关位置的输入然后用于导航的)。
如果要做出人工还是自动测试的决定,你能提供一些指导意见吗?
Kinsbruner:考虑到人工测试与自动测试之间的差异,非移动领域的规则一样适用于这里:
把最频繁的测试用例自动化;
- 结果可预测的用例自动化;
- 出于取得强劲的投资回报率的考虑,将容易实现的测试用例自动化;
- 自动化那些最乏味的人工测试用例
上述规则中需重视自动化必须跨设备和平台进行,以确保脚本可维护。同样,在移动测试自动化中,所选的解决方案必须支持所有类型的对象。最后,推进时要考虑在旧设备与移动OS上未来的回归周期。
组织在把移动应用带入企业生态体系时常犯的最常见错误是什么?
Kinsbruner:最大的两个错误是不在后台进行渲染,以及不使用应用缓存。
有什么跟设备相关的挑战?
Kinsbruner:注意移动设备的网络性能特征有着根本性的不同。开发者应重视的跟设备有关的陷阱包括:
- CPU和电池影响移动性能;
- 设备内存重复显示应用代码片段引发重度内存操作—导致性能下降,耗电增加等,比方说在屏幕上显示存在硬盘上的图像;
- 设备形态因子和屏幕尺寸也会影响到应用行为、性能等;
- JavaScript在移动设备上的执行用时更久—要延迟解析,直到应用需要;
- 在移动端的DOM对象也更加复杂;
- 网络约束—移动端的带宽从3G慢慢过渡到4G和WiFi。
如果企业在云端部署移动应用或采用云提供商的应用会怎样?云提供商在报告和维护移动应用性能方面的责任是什么?
Kinsbruner:云提供商的责任是确保覆盖所有最关键的最终用户:设备、位置、网络以及最常见用户场景。对于这些东西,云提供商必须提供互操作性能以确保最终用户体验能够在哪怕有来电、短信等时也能维持。
云提供商提供了一个安全的企业级云基础设施,也能进行上述领域的性能测试。一旦启动了客户负载测试,云提供商需要提供网络流量、设备资料等所有的信息和剖析数据。客户必须为其关键事务定义合适的关键性能指标,当然还有这些事务本身。
我们一直都在努力坚持原创.......请不要一声不吭,就悄悄拿走。
我原创,你原创,我们的内容世界才会更加精彩!
【所有原创内容版权均属TechTarget,欢迎大家转发分享。但未经授权,严禁任何媒体(平面媒体、网络媒体、自媒体等)以及微信公众号复制、转载、摘编或以其他方式进行使用。】
微信公众号
TechTarget
官方微博
TechTarget中国
作者
翻译
相关推荐
-
六步加速移动应用测试
在移动企业,如果你测试和发布app的速度不如竞争对手快,那你就要落后了。哪怕是最古板的保险公司都知道,在移动领域速度会杀人。
-
基础设施即代码以及持续交付的其他前提条件
持续交付的成功取决于四个前提条件。在本文中,专家聚焦于三种实践:自动化测试、基础设施即代码,以及过渡环境。
-
改善性能:七种方法优化移动应用
听起来似乎违背常理,但事实却是如此。尽管网络版应用已成为常事,但是,优化移动应用、避免性能漏洞仍然是巨大的挑战。
-
欲速则不达:移动开发可以放缓脚步
移动应用开发的成本通常都较低,而且开发周期较短,但这样开发出来的程序往往都比较杂乱,可能只是引进一些简单的功能,或修复了一些问题。