在web項目進行瀏覽器兼容性測試,論坑最多的,非IE系列瀏覽器莫屬,且IE8是我們組開發的心中的痛,一提到有兼容性bug,第一反應:是不是IE的?臥槽,又是IE8!
由于項目產品需要,管理后臺和官網等web項目都需要兼容到IE瀏覽器,兼容到IE8以上并且是含IE8,所以每次有新功能尤其關注的就是IE系列瀏覽器。一般情況下其他主流瀏覽器都問題不大,而IE瀏覽器不同版本也有差異,曾經就掉過坑,以為IE8測完一遍后,其他9,10,11問題應該不會很大,可以放心點,時間上評估少點,結果后來發現每個IE瀏覽器版本發現的bug都不一樣,出現的地方都不一樣,讓人非常憂傷。雖然嘗試用瀏覽器兼容性工具輔助如IEtester,但效果并不高。為了以后能更好地在IE瀏覽器進行測試,所以網上看了相關資料,了解IE不同版本的兼容性測試點,將IE瀏覽器不同版本的兼容性問題進行了整理。
IE瀏覽器自從IE9開始后,做了很大的改動,更符合了W3C標準,這也是為啥IE8比其他問題要更多的原因了。其中IE11已更完善,像IE11中就內置了IE7-IE10的瀏覽器模式(按F12打開開發者工具可見),方便開發進行更低版本的調試。如下整理IE9-IE11的變更點:
1、IE9
IE9 的 User-agent 字符串更改
驗證 JavaScript. 框架是否支持最新版本
空格保存和 DOM
當 Window 對象屬性處于孤立狀態時將被刪除
XSLT 兼容性更改
不再支持 Arguments.caller
數組索引處理
二進制行為和 XML 架構
二進制行為不再自動綁定
內容屬性和 DOM 屬性
CreateElement 不再支持尖括號
動態 VML 模式更改
枚舉 JavaScript. 屬性
泰語和東亞文字的字體大小
函數指針方法調用
從 DOM 刪除 IFrame. 資源后,可釋放這些資源
調用的間接 eval 函數的作用域現在為全局
不再支持傳統 DOM 事件
數學精確度和 SSE2 差異
MIME 類型和純文本內容
MIME 類型和樣式表
本機 XML 對象類型和傳統網站
NULL 協議返回值
對象元素回退適用于 DOM
克隆重疊元素
減少 MIME 類型的安全風險
圓角和傳統版漸變篩選器
腳本元素和事件執行
樣式表標題為只讀
表對象模型一致性
文本布局和自然指標
2、IE10
HTML5 Quirks 模式
IE10 user-agent 字符串
不再支持 DX 篩選器
不再支持元素行為和 HTC
ASP.NET 無法檢測
面向 Web 開發人員的瀏覽
不再支持條件注釋
自定義下載體驗
使用 JavaScript 處理夏令時
插件和 ActiveX 在 Windows 8 和 Windows 8.1 中受支持
拼寫檢查和自動更正支持
不再支持 VML
不再支持 XML 數據島
3、IE11
Web 開發人員可獲取 W3C DOM4 突變觀察者的支持,從而幫助監視需要觀察和跟蹤哪些 DOM 突變
已棄用文檔模式
Internet 區域不再支持 CSS 表達式
復選框和單選按鈕布局默認值
跨瀏覽器插件檢測
默認字體更改
默認情況下啟用增強保護模式 (EPM)
彈性框(“Flexbox”)布局更新
突變觀察者
指針事件更新
偽裝點擊測試在 IE11 邊緣模式中已禁用
邊緣模式不再支持 VBScript
Window 事件行為已發生更改
以上是對不同版本的變更做個整理,對于Web開發的前端來說,了解不同版本的變化尤其重要,而對于我們Web測試來說,如果也能多去了解根源的變化,相信也能有更好地幫助,雖然我也只是在瀏覽器兼容性測試摸索中,還沒有找到最佳實踐。如下附上部分曾經遇到的bug記錄,以提醒自己IE瀏覽器這個坑深著呢,哈哈!
原文轉自:http://qa.blog.163.com/blog/static/1901470022016111693828431/