该如何开始webView 性能测试?
随着主流系统的服务化设计,特别是SOA架构和微服务架构的流行,接口已经成为各系统间通信的桥梁。所以,接口性能分析成为一大重点。
面向服务的架构(SOA)是一个组件模型,它将应用程序的不同功能单元(称为服务)进行拆分,并通过这些服务之间定义良好的接口和协议联系起来。接口是采用中立的方式进行定义的,它应该独立于实现服务的硬件平台、操作系统和编程语言。这使得构件在各种各样的系统中的服务可以以一种统一和通用的方式进行交互。后面也会有相关的文章更新。大家可以戳此关注哦~
代理及抓包工具简介
这里先简单的介绍一下代理工具。本小节只做简单介绍,主流的接口分析工具如下:
代理工具:charles burpsuite
抓包工具:tcpdump wireshark
代理工具以Charles为主,可以代理系统网络流量,并对数据进行分析与修改。
使用tcpdump和wireshark可以对数据进行抓取,但tcpdump没有ui界面,适用于无UI界面的操作系统,wireshark存在界面。
webView测试
webview是手机应用内嵌的浏览器,在Android 4.4之前webview内核采用的是webkit,Android 4.4之后才用的是chrome作为内置浏览器。它是用来加载HTML的页面的控件。
很多移动端app都采用webview。好处:不用升级app即可完成页面的内容更替。如果对webview页面进行性能测试,就需要全新的测试工具。本小节将采用chrome分析工具解析webview性能。
chrome自带的分析工具——开发者选项:
上图中的蓝色的线(左侧竖框内的竖线)表示DOM结构已经加载完完成了。红色的线(右侧竖框内的竖线)表示页面的渲染以及图片的加载完成。
而选中图中的disable cache则表示每次不加载缓存,从零开始载入缓存:
资源请求的详细信息花费时间:
Queueing表示排队的时间
Stalled则表示在队列中,停止请求丢弃的时间
而比较重要的是waiting(TTFB)表示服务器接收到请求并响应的时间
content download表示资源下载的时间
移动端可以通过在chrome中访问chrome://inspect/ 来进行查看:
可查看webview需要具备:
手机存在webview或者手机的浏览器
需要开发人员打开一个webview调试开关或者使用Android 6.0模拟器
注意:chrome 62版本之后布局可能错乱,建议使用chrome 62
推荐学习
内容全面升级,5 个月 20+ 项目实战强化训练,资深测试架构师、开源项目作者亲授 BAT 大厂前沿最佳实践,带你一站式掌握测试开发必备核心技能(对标阿里P6+,年薪50W+)!直推 BAT 名企测试经理,普遍涨薪 50%+!
⬇️ 点击“阅读原文”,提升测试核心竞争力!