徵對各個瀏覽器和工具作了測試,之因此選擇的是百度首頁測試,由於其比較單一,沒有多層嵌套和持續加載,儘可能減小其餘影響,測試中發現目前有些方案是不可行的,後面徵對各個測試結果給出了可行方案和不可行的建議。前端
1 .webbrowser(內核IE10)和IE10瀏覽器的比較:web
Webbrowser的測試方法爲,先執行清除瀏覽器緩存,從開始導航開始計時,DocumentCompleted時間將2次觸發,取最後一次的時間,按照DocumentCompleted解釋,這個時間至關於所有元素loa完畢,測試結果以下:瀏覽器
接下來打開IE工具測試,先執行清除瀏覽器緩存測試結果以下緩存
結論:通過屢次測試,能夠看到,Webbrowser和IE工具測試的結果至關接近!服務器
Webbrowser 的DocumentCompleted時間即爲IE工具的所有元素加載時間網絡
結束時間工具
抓包IE10結果以下:性能
開始14:15:59:6241測試
結束14:16:00:1082 二者間隔爲481毫秒。pwa
抓包Webbrowser結果以下:
開始14:18:37:4179
結束14:18:37:8689
二者間隔451毫秒
結論:1.IE10和Webbrowser網絡加載時間基本相同,
2 問題:Fiddler抓包的數據大於瀏覽器的計算時間?這個是否是Fiddler數據有問題?
先清除瀏覽器緩存:
而後再打開百度
結論:怎麼測試都在2000毫秒以上,搞不懂爲何比IE慢那麼多?直眼睛都看得出來比IE慢!
能夠看到這個間隔時間爲246秒,首屏時間爲:1894毫秒
這個時間跟ie內核的差很少
Fiddler測試抓包:
14:34:09:7921
14:34:10:2181
426
能夠發現Fiddler抓包時間大於berserkjs的測試時間!
.
而後我又使用IE10作了個測試,關閉Fiddler用webbrowser測試時間爲186毫秒
打開Fiddler用webbrowser測試時間竟然高達460毫秒!
1. 瀏覽器對測試數據影響很大,3種種內核,最快的爲webkit 246,也有可能這個東西沒有外圍的程序直接使用內核的關係,他是最快的,IE10次之爲400,火狐最慢達到2000多,可是爲何火狐的速度那麼慢,這個未能有答案。
2. 查找各類資料,發現相似Fiddler這種工具使用的原理是,啓動了Fiddler,程序將會把本身做爲一個微軟互聯網服務的系統代理。做爲系統代理,全部的來自微軟互聯網服務(WinInet)的http請求再到達目標Web服務器的以前都會通過Fiddle,一樣的,全部的Http響應都會在返回客戶端以前流經Fiddler,那麼這就能解釋爲何開啓Fiddler後速度變慢了!
這個就是常常說的網絡劫持,相似的工具還有httpwach,httpanalyzer等,因而可知這種原理的測試數據會致使數據偏離實際,不建議使用!
3. 不能使用Fiddler這種原理,因爲webbrowser有限的功能和擴展,基本上不能取到har裏面的數據,這個方案將不可行!
4. 建議:使用berserkjs方案,目前IP未能解決,需想辦法解決此問題!