优势:
- H5可以跨平台使用,开发成本相对较低
- H5可随时上线就更新版本,适合快速迭代
- H5可以轻量的触达用户,提供更便捷的服务
- 在微信入口或者浏览器上,用户只需点开链接就可以获取我们所提供的服务
劣势:
- H5->app的转化强依赖于浏览器
- H5目前基本无法将数据存储在本地,依赖实时性数据,网络状态不好的时候卡到哭。
- 性能相对较低,影响用户体验
如何判断是否是H5页面:
- 基本上只要对那个view长按,然后看是不是有反应,比如手机震动(Android)、或者出现文字选择粘贴(Android/iOS),那么就是WebView!
1、业务逻辑相关
除基本的功能测试之外,H5页面的测试,需要关注以下几点:
1.1 登陆
目前H5与native各个客户端都做了互通,所以大家在测试的时候要注意两点:
A、若客户端已登录,那么进入H5后仍然是登录状态。
B、若客户端未登录,进入H5,点击对应按钮OR链接,如果需要登录,须拉起native登录。若取消登录,是否可再次拉起登录,或者停留在的页面是否有对应的登录提示。
1.2 翻页
遇到翻页加载的页面,需要注意内容为1页或者多页的情况。
A、数据分页加载时,注意后续页面请求数据的正确。
ps:这个需要注意在快速操作场景中,请求页数是不是依次递增,快速操作(如第一页尚未loading出来的时候仍然继续上拉操作)时是否发出去对应的请求了。
1.3 刷新与返回
A、下拉刷新是否仍然处于当前页面。
B、用户主动点击刷新按钮是否仍然处于当前页面。
C、刷新页面或者加载新内容时页面是否有抖动。
D、点击返回与back键,回退页面是否是期望页面;返回要考虑业务逻辑,友好返回到相应层次,需要从用户角度考虑返回的转跳逻辑,不能出现死循环。并要注意返回后是否需要刷新页面请求,比如支付完后返回订单列表, 最好刷新展示上一步购买的订单
1.4 mtop接口返回处理
发现这个出现问题的地方有很多,但是只要有意识的去处理,就很容易避免,主要是以下几种情况:
A、请求成功,且返回有数据,测试mtop接口返回数据的各种场景。
B、请求成功,但data内容为空。
C、请求接口异常,出现ERR_SID_INVALID::SESSION过期,拉起登录。
D、请求接口发生除C中提到的异常之外的异常,通常可归结为一类进行处理。
2、H5适配相关
H5的适配其实比客户端的相对来说,要少一些,手机品牌之间的差异不大,所以不用太多关注,最容易出现问题的系统,这个要特别关注下:
A、大屏(如720*1280,重点关注页面背景是否完全撑开页面,刷新是否有抖动)、小屏手机(如320*480,重点关注下弹框样式和文案折行)
B、android4.X随机找一个即可。
C、ios9、ios8、ios7。
3、安全相关
3.1 明确投放渠道都有哪些
如独客、主客、wap,是否对未投放渠道做了限制,直接通过url请求是否拦截等
3.2 评估是否需要接入集团安全,如mtee黑白名单等。
3.3 是否需要接入支付宝实名认证
涉及到金钱相关,如天猫积分,红包等,为了防刷,一般都需要判断是否支付宝实名认证。
3.4 是否接入windvane,所有请求通过native发出。
4、体验相关
4.1 资源相关
A、页面中有图片的话,淘宝那边建议图片一般不大于50kb,本着一个原则,尽量缩小图片。
B、资源是否压缩、是否通过CDN加载。
C、如何保证二次发布后有效更新。
4.2 流量
A、对于一些不会变化的图片,如游戏动画效果相关图片,不需要每次都请求的东西,做本地缓存。
B、数据较多时是否做了分页加载。
4.3 页面展现时间
A、关注页面首屏加载时间。
4.4 页面提示
A、弱网络下,数据加载较慢,是否有对应的loading提示。
B、接口获取异常时,提示是否友好。
C、刷新页面或者加载新内容时页面是否有抖动。
4.5 手机操作相关
A、锁屏之后展示页面。
B、回退到后台之后,重新呼出在前台展示。
4.6屏幕相关
横屏竖屏相互切换,能适应,布局不乱,或页面只支持横或竖屏限制
4.7 滑动定位
手指滑动是否流畅,手指点击时焦点是否定位正确,不同机型会不一样。焦点定位点击是灵敏。
4.8 弱网络体验
处于2G/3G网络省流量模式的一些特殊处理,比如2G网络下测试,图片多时是否要懒加载等。网络状况差的场景,可提示文案,但不能闪退
5、埋点数据检查
与BI、前端同学一起确认埋点情况
A、展现埋点:最关键的在于避免重复统计
B、点击埋点:关键在于避免服务器超时的情况下连续点击导致的重复统计
C、状态埋点:关键在于避免统计默认状态
D、计数埋点:关键在于避免遗漏。一般情况下,非实时发送的计数埋点容易出现遗漏情况,因为涉及到数据库的读写。因此在测试时要格外留意