高通吧 关注:179,585贴子:4,650,537
  • 14回复贴,共1

关于浏览器测试项目,从代码层面分析

只看楼主收藏回复


我去官网上看了测试代码,https://browserbench.org/Speedometer3.0/resources/benchmark-runner.mjs
首先核心的测试代码,可以看WarmupSuite对象里的test数组里的几个测试方法,
可以明确,测试代码完全是单线程运行的,因此只能测出单核性能,并且测试内容存在较多访问内存操作,理论上大缓存的核心比较吃香
测试了如下内容
a) DOM 操作性能:
元素查询 (querySelector, querySelectorAll, getElementById)
Shadow DOM 查询和操作
元素属性设置和获取
b) 事件处理性能:
鼠标事件 (click, mousedown, mousemove, mouseup)
键盘事件 (keypress, keyup)
表单事件 (change, input, submit)
滚轮事件 (wheel)
c) 布局性能:
元素位置计算
布局重计算
视图渲染时间
d) 异步操作性能:
计时器操作 (setTimeout)
动画帧处理 (requestAnimationFrame)
异步事件处理
e) 页面加载性能:
iframe 加载时间
资源加载时间
DOM 准备时间
性能指标收集:
测试框架会收集以下性能指标:
同步执行时间
异步执行时间
总执行时间
几何平均值
性能得分
每次迭代的详细统计数据
测试方法特点:
支持多次迭代测试
可以随机打乱测试顺序
支持预热阶段
提供两种测量方法:基于定时器和基于 requestAnimationFrame
可以设置视口大小
支持等待时间配置


IP属地:广东1楼2024-10-23 20:14回复


    源代码


    IP属地:广东2楼2024-10-23 20:16
    回复
      2025-06-23 21:05:17
      广告
      看起来都是常用操作呀,挺客观的


      IP属地:安徽来自Android客户端3楼2024-10-23 20:26
      回复
        移动端和桌面一样吗


        IP属地:江苏来自Android客户端4楼2024-10-23 20:28
        收起回复
          所以你看还是对处理器提出了要求。不完全是刷分项目,而且处理器不行的你也刷不上去。不是大缓存,不是单核性能很好的soc根本刷不了几分。不能以这个完全为准,但是这个呢还是有参考价值的。


          IP属地:四川来自Android客户端5楼2024-10-23 20:32
          回复
            难怪骁龙今年莫名其妙的让媒体测这玩意儿。他确实缓存大,单核性能当然它的单核性能我怎么来的我就不说了啊。按理来说发哥的缓存也不算小,这个分数不应该和去年的一样吧。理论上他应该正常情况下能跑20分以上的。至少是用户随手一跑就能够跑到,只要浏览器是对的。


            IP属地:四川来自Android客户端6楼2024-10-23 20:33
            收起回复


              IP属地:广西来自Android客户端7楼2024-10-23 20:52
              回复
                懂了,就是测缓存的


                IP属地:湖南来自Android客户端8楼2024-10-23 21:31
                收起回复