关于PWA-Progressive Web App的一些测试思考

现在app太多了,有的时候把整个手机的空间都占满了。所以,有时候我会清理一下Android手机里那些不常用的app程序,来释放小小的8G手机内存。有一天,突然看到一个新闻,说饿了么可以通过手机网页,免下载直接生成一个桌面应用,而且可以媲美原生的native应用体验,我来了兴趣,马上试用一下。

用我的华为荣耀3C,打开Chrome浏览器,在地址栏输入https:eleme.me,就打开了饿了么的手机网页,再点击右上角的“更多”按钮,弹出一个对话框,点击“添加到主屏幕”,提示添加成功。回到主屏幕,此时出现一个饿了么的图标,跟应用市场下载的一模一样。点击进入程序,嗯,确实和native的体验一样的。哇,还有推送消息,不错嘛!

作为一个测试人员,只是体验这个程序还是满足不了我的。去研究一下,这个炫酷应用的来龙去脉吧。这种直接从网页加载到手机主屏幕的技术框架是PWA(Progressive Web App),中文名全称:渐进式网页程序。Google公司于201年提出,不过是在2016年6月才进行市场推广的,目前该技术在国外挺流行的,因为解决了“不用下载应用,但是却可以使用应用”的市场需求。所以,在硬件环境相对恶劣的印度,更加火爆。引用一下Alex Russel的关于PWA技术的一篇博客文中的一句话:“escaping tabs without losing our soul”翻译过来就是“逃避但不失去灵魂”,应该说是脱离了原生app,但是却保留了完整的业务功能,可见即可用。

作为测试工程师,我们应该了解PWA的特性,从而可以针对PWA模式的网页做测试。根据Google的定义,PWA应该具有以下特性:

1. 渐进式属性:任何环境都能运行,包括可以进行降级运行。

2. 响应式属性:什么样的设备都可以使用。

3. 可离线应用属性:基于Service Worker服务,在没网或者弱网的条件下也能打开网页,

4. 类app属性:类似APP的使用体验

5. 持续更新属性:基于Service worker服务,保持网页是持续更新状态

6. 安全属性:https网络服务

7. 可搜索属性:能被引擎搜索到

8. 推送功能:不用打开网页,推送新的消息

9. 可安装属性:不用通过应用商店,就能添加到手机的主屏幕

10. web连接属性:有一个连接就可以跳转到程序的Web页面

结合以上的PWA特性,我们考虑针对性的功能测试。

1. 针对1.渐进式;2.响应式;3.离线应用这三个特性,属于对硬件和网络环境比较恶劣的情况的测试。我们可以针对性的选择以前的Android老旧机型,平板,在弱网或者断网环境下测试程序,看网页是否正常加载显示。然后可以逐步提高网络环境和硬件,测试加载速度。测试是否逐级渲染等。

2. 针对4.类app属性,可以参考app上的操作,对网页进行操作,是否流畅。如果是从手机桌面进入的程序,程序应显示该是没有URL头部的。

3. 针对5.持续更新属性,应该是像传统web一样,支持热更新,及时展示新内容。包括在原有页面刷新和重新进入web页面刷新。

4. 针对6.安全性,可以用市场上有的一些安全扫描工具加自行抓包进行测试。保证程序和数据安全。

5. 针对7.可搜索属性,利用手机端的各个搜索引擎,可以搜索并打开程序。

6. 针对8.推送功能,利用后台设置,不打开网页收取推送信息。

7. 针对9.可安装属性,测试各个主流Android厂商手机的安装并打开功能。

8. 针对10.web连接属性,可以从网络连接和安装的程序里测试打开网页功能。

以上是功能测试的内容,但是对于这个PTA的网页,因为它是可以放置在手机桌面的,像一个客户端,但是又不是app的客户端,那这个PWA网页在手机上的CPU和内存的性能测试如何进行呢?我遵循app客户端的性能测试思路,找到了办法。

1. 首先用 adb shell dumpsys meminfo 命令,我找到了这个PWA网页的进程,因为其实它还是运行在Chrome的浏览器上,所以进程是两个基于chrome的:

2. 利用adb shell dumpsys activity activities 命令,找到这个PWA程序的activity,基于Chrome浏览器运行的:

com.android.chrome/org.chromium.chrome.browser.webapps.WebappActivity

根据上面找到的1.进程名,2.Activity,就可以展开这个PWA程序的对Android机器的CPU和内存等等其他的性能测试。

国内因为PWA技术是Google的,所以现在还不如国外那样流行。但是PWA可以满足用户的几个关键需求:可以搜索到,可见即可用,用完即走,重复使用也方便,是一个又轻又快的应用技术,发展前景十分广阔。2018可能会是PWA应用在国内大发展的一年,让我们一起期待吧!

更多关于测试方面的文章,请前往51Testing软件测试网学习哦~

  • 发表于:
  • 原文链接http://kuaibao.qq.com/s/20180403A16DAN00?refer=cp_1026
  • 腾讯「云+社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。

扫码关注云+社区

领取腾讯云代金券