浏览器家园·资讯

展开

UC 开发者调试工具及使用

编辑:浏览器知识

6.2 Control详解

Control中支持两种录制操作:录制网页交互和录制网页加载。为了便于分析,录制的时间不宜太长, 尽量避免不必要的交互操作。在录制之前点击Controls中的Screenshots复选框,可以在录制过程中捕获截屏,鼠标在Overview上移动则可以看到录制的动画。勾选Memory复选框, 可捕获Memory信息。 下图中红框区域是勾选Screenshots生成的, 篮框区域是勾选Memory生成的。

Developer Tools - 100.84.42.129-testpage-cr57-feature-devtools-biquge_slow.html_043.png | center | 832x777

6.3 Overvie详解

通过鼠标或者区域边界上的灰色滑块来拖出一个指定区域范围,Flame Chart会跟着局部放大显示指定区域内的详情信息. 也可疑通过键盘上的W/S来放大/缩小指定区域,通过A/D来向左/向右移动指定区域。该区域包括三个图表:

3mHWTSfr4I.png | center | 832x85

对于NET图表, 点击具体资源, 在Panel左下角, 会显示加载该资源的概述。

SNBHh5oRyn.png | center | 832x637

UC支持在Timeline中标记size过大的资源, 具体表现为: UC对不同类型资源size设定了一个阈值(根据经验值), 当资源size超过阈值时, 自动在右上角添加红色三角形提示, 点击被红色三角形标记的资源, 在panel的左下角, 会显示对资源size的建议(下图蓝色框所示)。

McqktExuMT.png | center | 832x636

UC开发者工具会根据实际情况调整阈值, 下图是目前不同资源的阈值。

资源size阈值.jpg | center | 521x250

6.4 Flame Chart详解

Chrome官方在Flame Char中标记了三条不同颜色的虚竖线。其中蓝色标记DOMContentLoaded event;绿色标记First Paint的时间点;红色代表load event; UC支持在Timeline中标记T2, 具体表现为: 在First T2时间点增加一条黑色的虚竖线(下图红色框圈出)。 T2标记线配合Overview里边的NET图表, 更直观地展示T2前加载的资源是否合理, 不合理的具体原因。

E5QCDugEhP.png | center | 832x635

Timeline更多请参考官方文档,  想详细了解UC对Timeline的优化, 请参考文档 xxx(待补充)。

7. Profiles

在Profiles中可以追踪网页程序的内存泄漏问题,进一步提升程序的JavaScript执行性能。主要包括以下功能:

图片11.png | center | 832x354

7.1 Record JavaScript CPU Profile简介

选择Record JavaScript CPU Profile,点击Start,结合所要分析的具体场景(比如重新加载网页, 在网页上进行交互, 或者不操作),最后点击Stop,完成记录操作。提供三种不同的视图供分析:

接下来以Chart视图为例分析下JS的性能. Chart视图以时间顺序展示CPU的性能情况,视图主要分成两块:

在Call Stacks区域, 鼠标移到函数上会显示函数名称和执行时间等相关数据,具体提供的信息有:

更多使用请参考官方文档。

8. Application

Application记录网站加载的所有资源信息,包括存储数据(Local Storage、Session Storage、IndexedDB、Web SQL、Cookies)、缓存数据、字体、图片、脚本、样式表等。主要4大块窗格(Pane):

Developer Tools - https:--m.qu.la-book-62416-_030.png | center | 832x473

选中资源,右键即弹出四个选项,点击第一个”Reveal in Network Panel”, 即跳转到Network中。

图片12.png | center | 832x474

Developer Tools - https:--m.qu.la-book-62416-_031.png | center | 832x473

9. Security

Security用于调试当前网页的安全和认证等问题, 并确保网站正确地实现HTTPS。如果网页是安全的,则会显示这样一条消息:This page is secure (valid HTTPS).。

图片13.png | center | 832x466

但是,Chrome57版本该功能不完整, 不能正确检测网页是否安全, UC目前也存在这个问题, 检测结果如下图

Developer Tools - https:--m.baidu.com-?from=2001a_034.png | center | 832x473

同样, 各链接中给的证书也无法打开(对比Chrome高版本可以打开)。

Developer Tools - https:--m.baidu.com-?from=2001a_033.png | center | 832x473

10. Audits

Audits对当前网页进行网络利用情况、网页性能方面的诊断,并给出一些优化建议。强烈推荐使用UC适配的Lighthouse Lighthouse Lighthouse(x3 重要事情说三遍)。

Developer Tools - https:--m.qu.la-book-62416-_028.png | center | 832x473

选中Network Utilization、Web Page Performance,点击Run按钮,将会对当前页面进行网络利用率和页面的性能优化作出诊断,并给出相应的优化建议, 比如列出所有没有用到的CSS文件等。

图片14.png | center | 832x473

11. Lighthouse

在 Lighthouse 之前,一般基于 Performance API 以及 Devtools 来做页面性的能监控和优化。Performance API 给出的是页面加载过程的关键时刻数据,如 Time to First Byte(TTFB)、Fist Meaninful Paint 等指标,这些数据很有用,但不足以反映页面的整体情况及用户的真实感受。Devtools 功能很强大,但对于使用者的专业素养要求较高,而且每次都要人肉去分析(当然,对于特定问题,人肉分析还是无法避免),对于一些常用的有规律可循的检测无法沉淀。 Lighthouse 的出现一定程度上解决了 Performance AP 指标单一、 Devtools 难以驾驭的问题。使用 Lighthouse,除了在性能优化的道路上能走得更远,在最佳实践、SEO、Accessibility、PWA 以及扩展业务指标也大有可为。

UC lighthouse 除了 fork 了官方代码,也适配了 U4 内核,同时也提供了业务扩展能力, 目前包括但不限于提供加载性能、滚动性能、渲染性能等检测, 目前可执行的案例有:

11.1 执行用例

点击界面左上角的”+” 或者点击界面中间的”Perform an audit”按钮(如下图),进入案例选择。

Developer Tools - https:--m.baidu.com-?cip=119.145.89.97&baiduid=3734B4AF184CF6B2D574EC683622B2A2&from=2001a?from=2001a&index=&ssid=0&bd_page_type=1&logid=11651327183671827804&pu=sz-401321_480&t_noscript=jump_049.png | center | 522x280

勾选用例(单选),点击”Run audit”,即可执行案例。

Developer Tools - https:--m.baidu.com-?cip=119.145.89.97&baiduid=3734B4AF184CF6B2D574EC683622B2A2&from=2001a?from=2001a&index=&ssid=0&bd_page_type=1&logid=11651327183671827804&pu=sz-401321_480&t_noscript=jump_050.png | center | 522x303

11.2 Chrome cases

UC Lighthouse将Chrome原生的多个案例归一为Chrome cases, 具体包括: PWA支持检测(Progressive Web App), 性能检测(Performance), 最佳实践检测(Best Practices)。 结果具体含义参考官方文档。

image.png | center | 304x263

11.3 load performance

加载性能有多个检测项, 主要包括对关键指标t0t1t2, 图片压缩格式, 资源size, 资源请求, 排版渲染, Localstorage读写频率, JS执行耗时, 整体耗时, 缓存命中等维度的检测。 这些检测项的通过标准基于经验值。

image.png | center | 523x779

11.4 rendering

渲染性能有四个检测项, 主要包括对惯性滚动性能, 图层合成复杂度, 图层合成稳定性和惯性滚动过程中发生光栅化性能的检测。 和加载性能一样, 这些检测项的的通过标准基于经验值。

image | center | 594x313

ps: 想了解以上四个检测项的详情,可参考以下ATA文档 惯性滚动性能测试 https://www.atatech.org/articles/75082 光栅化性能测试 https://www.atatech.org/articles/75080 图层复杂度和稳定性 https://www.atatech.org/articles/75081

11.5 uc default cases

uc default cases案例包括最佳实践, 加载性能和渲染性能三大部分。其中加载性能同 11.3 load performance, 渲染性能同 11.4 rendering,  这里不再详述。

image.png | center | 522x472

最佳实践只有两个检测项:

image.png | center | 522x160

11.6 memory analyze

memory analyze根据经验值分析各种 RAM/ROM 下可能出现内存使用不正常的场景。各项结果的意义参考ATA文档 https://www.atatech.org/articles/93961

image.png | center | 522x179

image.png | center | 522x774

image.png | center | 523x924

ps: 本章节的测试基于sina.cn 想了解UC对Lighthouse的优化, 请参考文档 xxx(待补充)。

问题与反馈

工具兼容devtools,更多使用可以参考: https://developer.chrome.com/devtools

http://plus.ucweb.com/?locale=en-us https://github.com/uc-developers/devtools/issues

文章TAG:开发  开发者  调试  调试工具  UC  

加载全部内容

相关教程
猜你喜欢
大家都在看