H5性能分析

1.w3c协议

w3c给浏览器的协议如下:

这些浏览器本质上都是w3c的标准,这些指标全部都在w3c里
具体细节可以访问官网,图中显示的只是很小的一部分;要挖掘的知识点是非常多的,可以自己去研究 
从前往后:
unload:卸载时间
redirect:重定向时间,用户注销登录时返回主页面和跳转到其他网站等
app cache:是否使用缓存,检查缓存是否打开
DNS(域名系统): DNS域名查询的时间,如果是长连接或者请求文件来自缓存等本地存储则返回fetchStart时间点
TCP:发起tcp请求的时间,与服务器建立连接的时间
request:请求时间,浏览器发起请求的时间
response:拿到第一个响应字节到最后一个响应字节的时间
processing:各种状态的时间点(加载、交互)
load:触发load事件执行的时间
因此我们就有一个通用的api可以去查询,而不是上节中讲到的图示化的内容 
如果访问的是长连接或者本地以上时间都有可能是0,控制台中输入window.performance.timing,返回的时间都是以上介绍的时间 
w3c类似于硬埋点,都有一个标准
2.自动化获取性能指标
主要是运用了selenium工具可以执行js脚本的原理
 
from selenium import webdriver


class Test_time():
    def setup(self):
        pass

    def test_yunpei(self):
        driver = webdriver.Chrome()
        driver.get("https://tqmall.360cec.com/")
        print(driver.execute_script("return JSON.stringify(window.performance.timing)"))

进行json的格式化,然后return回来,一定要return,不然无法显示
使用selenium或者appium都可以实现执行js脚本,获取性能指标 
运行脚本,执行结果如下:
posted @ 2020-05-03 11:03  zhaikunkun  阅读(130)  评论(0)    收藏  举报