兼容性測試的正確打開方式
前幾天在我創建的技術交流群,幾位同學聊起了兼容性測試相關的話題。有測試的方法技巧,有如何選擇測試時的切入點,也有在質量和投入成本之間如何做平衡的思考。
翻了翻寫過的技術文章,大多集中在后端、中間件以及穩定性測試方面,兼容性測試也有做過專項。這篇文章,我想結合自己對兼容性測試的理解,以及做技術專項的一些經驗,談談我的一些看法。
如何理解兼容性測試
兼容性測試,最初是為了檢查軟件在不同的硬件、操作系統以及軟件平臺上是否可以正常運行,即軟件的可移植性和正確性檢查。操作系統如 Windows 和 Mac,各種瀏覽器兼容如Chrome、Firefox、IE。
近幾年隨著移動互聯網的全面發展,我們提起兼容性測試,更多指的是軟件/APP在不同移動端設備、不同操作系統上的兼容,比如字體、顏色、分辨率、屏幕尺寸、頁面布局等。
移動端設備,即我們常見的各品牌手機、平板;操作系統,現在主流的就是 Android 和 IOS。當然,為了解決移動端跨平臺的兼容問題,H5從04年被提出之后,在14年之后開始成為了事實上的標準。近幾年,隨著小程序生態的蓬勃發展,關于小程序的兼容,也越來越被重視了起來。
兼容性測試的測試點
如上面所說,兼容性要測試的點,主要集中在設備類型、操作系統、網絡環境、頁面布局和分辨率五個方面。
- 設備類型:設備主要分手機和平板,在實際測試中,根據各大品牌不同系列的市占率,通過品牌+系列的組合來進行采購機型。
- 操作系統:目前移動端設備的操作系統,主要是 Android 和 IOS。操作系統的兼容方面,IOS的的系統版本兼容性做的相對更好,向下兼容會更好一些,一般用模擬器測試即可。而Android由于各大廠商各自的定制化開發,有各種自己的特性,因此在操作系統的兼容性測試時,要考慮各種機型、系列、版本的兼容,這一點Android模擬器做的就比較差。當然,如果考慮到買真機的成本比較高,可以考慮各大云測平臺提供的服務,比如百度MTC、阿里MQC、騰訊優測等平臺。
- 網絡環境:網絡環境主要的測試點就是移動網絡如3G、4G、5G和Wi-Fi、弱網等情況下,軟件APP的運行情況。
- 頁面布局:頁面布局主要的驗證點在于按鈕、樣式、文字展示、Tab頁面切換和圖片等方面。特別是游戲和跨境電商等類型的業務,涉及到多語言,這方面是最容易踩坑的。
- 屏幕分辨率:現在主流的移動端設備,分辨率都不會太差。測試時候主要關注各種設備機型的屏幕分辨率、屏幕尺寸和UI 適配情況。iOS可通過模擬器進行,Android往往仍需要真機測試,如果對手機屏幕尺寸沒有過高的適配要求,則可以用模擬器來進行測試。
兼容性測試的注意事項
- 如果對兼容性有較高的要求,需要投入大量的人力和硬件成本來做優化,且需要持續的投入。
- H5 和 Native各有優劣,H5的優勢在于跨平臺的開發便捷性和擴展性,Native在于原生和設備適配性更好,更穩定。
- 在平衡成本和效果之后,相對性價比較高的兼容性測試方案,是選取主流機型+操作系統進行測試驗證,其他的用模擬器/云測平臺跑自動化來解決。
- 為了解決軟件APP的兼容性問題,良好的研發設計規范是必須的。比如統一字體/顏色做自適應,缺省圖崩潰圖提示等進行統一的規范設計。