一、什么是兼容性測試?
很多人都知道兼容性測試,但是卻很少能准確理解兼容性測試,大多都只會想到瀏覽器的兼容;實際兼容性還有其他內容,包括web 兼容和APP 兼容;那么下面咱們先說說什么是兼容性測試:
兼容測試(Compatibility Test Suite )官方簡稱CTS ,指對所設計程序與硬件、軟件之間的兼容性的測試。一般來說,兼容性指能同時容納多個方面,在計算機術語上兼容是指幾個硬件之間、幾個軟件之間或是軟硬件之間的相互配合程度。
按照我的理解,我認為兼容性測試是指測試軟件在特定的硬件平台上、不同的應用軟件之間、不同的操作系統平台上、不同的網絡等環境中是否能夠很友好的運行的測試。
二、兼容性測試分類
兼容性測試目前我關注的包括web 兼容性測試和APP 兼容性測試;
兼容測試包括:
(1)瀏覽器兼容測試:測試程序在不同瀏覽器上是否可以正常運行,功能能否正常使用;
(2)屏幕尺寸和分辨率兼容測試:測試程序在不同分辨率下能否正常顯示;
(3)操作系統兼容測試:測試程序在不同的操作系統下面能否正常運行,功能能否正常使用,顯示是否正確等;
(4)不同設備型號兼容測試:針對於APP,現在移動設備型號五花八門,主要測試APP 在主流設備上能否正常運行,會不會出現崩潰的現象。
三、兼容性測試方法
Web 端和APP 端的兼容性測試,有兩種方法:一種是人工測試即全手工測試兼容;另外一種是借助第三方兼容性測試工具;
人工測試工作量大,而且覆蓋不全;第三方測試工作雖說工作量小,但是在主功能和主流程測試的時候沒有側重點,很難發現一些隱藏的問題;要說這兩種方法哪一種更好,我個人認為沒有最好,我覺得這兩種方法適當的結合才是最好的兼容性測試方法;
四、如何進行兼容性測試
(1)Web 兼容性測試
首先開展人工測試,測試工程師測試主流瀏覽器和常用操作系統測試主流程和主界面,看看主流程和主界面是否有問題,如果存在問題,那么記錄下bug 情況,以及瀏覽器型號和版本,以及操作系統,准確定位bug 產生的原因,提交bug,告知開發人員修改。所有的主流設備都需要進行測試,只關注主流程和主界面,畢竟每個系統主流程和主界面不是很多,所以這個工作量還是可以承受的。
其次借助第三方測試工具,目前我覺得比較好用的第三方Web 測試工具有IEtester(離線)、SuperPreview(離線)和Browsershots:Check Browser Compatibility, Cross Platform Browser Test(在線),一款可以測試IE的兼容,一款可以測試主流瀏覽器的兼容,包括谷歌、火狐、Opera 等等。借助第三方測試工具,找到bug 產生的位置,分析測試結果,告知程序員調整。
(2)APP 兼容性測試
APP 的兼容性測試和Web 測試類似,首先開展人工測試,測試工程師借助測試設備對主流程和主功能,主界面進行測試;收集所有的能收集到的不同型號的測試設備測試主流程和主界面,看看主流程和主界面是否有問題,如果存在問題,綜合考慮設備的使用率等因素,看看是否需要調整,如果需要,那么記錄下bug 情況以及測試設備的型號和操作系統,准確定位bug 產生的原因,提交bug,告知開發人員修改。
其次借助第三方測試工具,對於APP 的兼容性測試,我推薦的是百度眾測平台和雲測平台,我經常使用的是雲測平台,這兩款測試工具里面包含了安卓和iOS 的測試;測試很齊全,包括功能測試、深度兼容測試、性能測試、網絡環境測試,還可以模擬海量用戶測試,還可以導入自己編寫的測試用例進行功能測試,里面還包括測試專家的測試,當然了找專家是要花錢滴。基本進行兼容性測試是不需要花錢的;測試工程師把打包好的apk 或者IPA 文件,上傳到測試平台,選擇需要測試的設備型號,開始任務即可;等待一段時間,在等待的時間你是不需要盯着的,你可以做其他的工作。測試完成后會生成一份測試報告,可以查看錯誤頁面和錯誤日志,如果需要調整,那么提交bug,告知程序員修改即可。
五、兼容性測試的作用
兼容性測試是軟件測試過程必不可少的一個過程,沒有兼容測試的測試是不完整的測試,兼容性測試的存在是有一定作用的。我個人覺得最少有以下幾點:
兼容性測試能夠進一步提高產品的質量,提高用戶體驗;
兼容性測試能使軟件與盡可能多的其他軟件“和平共處”,盡可能達到平台無關性;
兼容性測試能盡可能的保證軟件存在的價值,它是衡量一個軟件質量的重要指標;
兼容性測試能使軟件產品的市場更廣闊;