前言
Web的載體是瀏覽器,隨著互聯網的發展,市面上存在各式各樣的瀏覽器,Web的兼容測試變得更加重要。然而,兼容性測試一直是專項測試中比較繁瑣的一部分任務。如何選擇典型的平臺建立有效的兼容矩陣一直困擾著小編。本文,通過各項資料的調研,結合瀏覽器的發展史,分析了市場上瀏覽器、系統平臺和分辨率占有率,總結了兼容測試矩陣,供大家參考。
一些你需要了解的背景知識
Web兼容測試一般以瀏覽器為主,平臺、分辨率為輔。首先,先從時間線了解下瀏覽器的發展史。從1990第一款瀏覽器誕生后,廠商之戰硝煙四起。從瀏覽器的命名到標準協議的制定再到自主研發內核,瀏覽器的發展經歷了蛻變的過程。
瀏覽器是Web客戶端最核心的構件,來自不同廠商的瀏覽器對Java、JavaScript、 ActiveX、 plug-ins或不同的HTML規格有不同的支持。那么是什么引起了這些不同?回答是瀏覽器的內核。來自百度百科的定義,瀏覽器最重要或者說核心的部分是“Rendering Engine”,可大概譯為“渲染引擎”,不過我們一般習慣將之稱為“瀏覽器內核”。負責對網頁語法的解釋(如標準通用標記語言下的一個應用HTML、JavaScript)并渲染(顯示)網頁。瀏覽器的內核是由排版引擎和JS引擎組成。
排版引擎主要負責取得網頁的內容(HTML、XML、圖象等等)、整理信息(例如加入CSS等),以及計算網頁的顯示方式然后會輸出至顯示器或打印機。歷史的洪流是洶涌的,在瀏覽器的發展競爭中,Opera風靡一時的Presto排版引擎在2013退出了舞臺,而Webkit引擎通過對linux系統的排版引擎KHTML的改造,成為了新一代霸主。目前,市場上活躍的排版引擎是Trident、Gecko、Webkit、Blink、Chromium,其中Blink是Chrome和Opera聯合,基于webkit研發一套效率更高的引擎,Chromium則是Chrome的開源項目,供給非自主研發內核的廠商做定制化開發。
另一方面,JS引擎的豐富也是不容小覷。JavaScript引擎是一種進程虛擬機,被嵌入到瀏覽器中,專門設計來解釋和執行的 JavaScript 代碼。JS引擎和排版引擎一般是成對出現的,即各大排版引擎代表廠商相繼開發優化了自己的JS解析器。
誰是市場的寵兒
了解了瀏覽器的發展歷程和當前主流的內核,現在我們來看看關于瀏覽器、系統平臺和分辨率市場的導向。
1. 瀏覽器的市場份額
全市場份額的數據來看,截至2017年8月,全球PC瀏覽器市場份額榜首為Chrome,其他內核的瀏覽器也在市場上展現了優勢。國內的瀏覽器市場與國際市場最明顯的差異表現在基于Chromium+Trident內核改造的雙核瀏覽器活躍度。需要指出的是,雖然國產的雙核瀏覽器的內核大部分是基于同樣的雙核,但在研發過程中為了突出差異性,各廠商對內核做了不同改造,因此需要區分測試。
因瀏覽器的迭代速度較快,一般選擇瀏覽器的最新版本。為了進一步精確兼容的覆蓋范圍,本次針對市場份額最大的四大內核代表瀏覽器,分別以支持winXP系統、HTML5技術等為差異點進行了簡單的版本調研:
2. 系統平臺市場份額
目前市面上主流PC端的操作系統有Windows、Mac OS、Linux等。截至2017年8月,全球PC操作系統是份額依然是Windows、Mac OS、Linux占據主流市場地位,其中Windows10市場份額呈上漲趨勢,Windows8、Windows XP均出現明顯下降。從國內市場占比來看,Windows占領近95%的市場,其中Windows7依然呈現超過60%的領先地位。
3. 分辨率的選取
據百度瀏覽研究院統計,2017年分辨率的占比最高的是360*640,且呈現上漲趨勢,主要原因是移動端瀏覽器的崛起。
PC端兼容性矩陣
綜合主流內核和市場導向,得出PC端兼容性測試的矩陣為:
參考
http://blog.csdn.net/djd1234567/article/details/52471647
http://www.search1990.com/other/201604032134.html
https://www.zhihu.com/question/52250984
http://www.iimedia.cn/52687.html
http://litten.me/2014/09/26/history-of-browser-useragent/
http://www.cnblogs.com/xiyangbaixue/archive/2014/10/22/4042548.html
http://blog.csdn.net/wangji5850/article/details/51005064
http://blog.csdn.net/baidu_35738377/article/details/53282141