學習筆記 流暢度測試關注的幾個引數

2021-10-14 02:39:30 字數 1720 閱讀 5032

(1)fps(平均幀率):幀率--1秒內平均畫面重新整理次數;

frametime:兩幀畫面間隔耗時--也可簡單認為單幀渲染耗時;=1/fps

(2)jank:android端流暢度機制-黃油計畫(jank);

(3)stutter(卡頓率):測試中卡頓時長的佔比,即stutter(卡頓率)=卡頓時長/總時長;

gpu渲染b幀時,用了兩個顯示器重新整理時間,有一次沒有重新整理畫面,使用者會感受到卡頓。使用者感受到的時螢幕重新整理的間隔時間。

畫面渲染流程如下:

(1)fps=40,其**現一次frametime>117ms,當真幀率是10時,預期的frametime=1000/40=25ms,所以非均勻渲染會感覺到卡;--micro stuttering(微型口吃)。

(2)fps=30,frametime均勻為33ms,畫面會非常平滑。

google jank 計算思路:考慮視覺慣性,以硬體vsync時間間隔,連續1次vsync沒有新畫面重新整理,則認為是一次卡頓,也就是說下一次vsync時間點沒有新畫面重新整理,則認為是一次jank。

perfdog的jank計算思路:

考慮視覺慣性,假設以前三幀的平均幀耗時為參考,作為vsync時間間隔,連續兩次vsync沒有新渲染畫面重新整理,則認為是一次潛在卡頓,也就是說下一幀耗時大於前三幀平均幀耗時2倍,則認為一次潛在卡頓。同時單幀耗時滿足大於兩倍電影幀耗時1000ms/24*2 (由於人眼低於24幀才能辨別畫面不連續性),則認為是一次真正卡頓。同時若單幀耗時大於3倍電影幀耗時,則認為是一次嚴重卡頓。

perfdog的jank計算方法:

同時滿足兩條件,則認為是一次卡頓jank.

①display frametime>前三幀平均耗時2倍。

②display frametime>兩幀電影幀耗時 (1000ms/24*2=84ms)。

同時滿足兩條件,則認為是一次嚴重卡頓bigjank.

①display frametime >前三幀平均耗時2倍。

②display frametime >三幀電影幀耗時(1000ms/24*3=125ms)。

使用者感受到的流暢度和視覺慣性及電影幀有關係:

電影幀:電影幀率(18-24),一般是24幀。電影幀單幀耗時:1000ms/24=40ms。電影幀率是乙個臨界點。低於這個幀率,人眼基本能感覺畫面不連續性,也就是感覺到了卡頓。電影幀是42ms

測試過程中,卡頓時長的佔比。即stutter(卡頓率)=卡頓時長/總時長;stutter(卡頓率) = ∑jank time / time

說明:jank為卡頓次數,stutter為卡頓率,jank和stutter趨勢有一致性,但並非完全線性,因為每次jank卡頓嚴重性是不一樣的。同時也說明了,沒有jank卡頓出現,自然也就卡頓率是0了。

參考:

安全測試關注的幾個方面

層面安全保障 掃瞄 業務層面安全保障 破壞者思維審視需求,找出存在的漏洞,找出可以破壞的規則 垂直許可權攻擊又叫做許可權提公升攻擊。其原理是由於web應用沒有做許可權控制,或僅僅在選單上做了許可權控制,導致惡意使用者只要猜測其他管理頁面的url,就可以訪問或控制其他角色擁有的資料或頁面,達到許可權提...

效能測試 效能測試關注的幾個重要概念

併發 一種是所有使用者在同一時刻做同乙個操作 一種是多個使用者對系統進行了操作 此操作可相同可不同 求併發使用者數公式 在實際的效能測試工作中,測試人員一般比較關心的是業務併發使用者數,也就是從業務的角度關注應該設定多少個併發數比較合理。下面找乙個典型的上班簽到系統,早上8點上班,7點半到8點的30...

學習《流暢的Python學習》 筆記02

1.2.2 字串表示形式 python 有乙個內建的函式叫 repr,它能把乙個物件用字串的形式表 達出來以便辨認,這就是 字串表示形式 repr 就是通過repr這個特殊方法來得到乙個物件的字串表示形式的。如果沒有實現repr,當我們在控制台裡列印乙個向量的例項時,得到的字串 可能會是 互動式控制...