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