2億人都在用的小程序,到底該如何測試?

一、什么是小程序
英文名Mini Program,是一種不需要下載安裝即可使用的應(yīng)用,是內(nèi)嵌在微信APP里面的一款新形態(tài)軟件。
它實現(xiàn)了應(yīng)用“觸手可及”的夢想,用戶掃一掃或者搜一下即可打開應(yīng)用。
也體現(xiàn)了“用完即走”的理念,用戶不用關(guān)心是否安裝太多應(yīng)用的問題。應(yīng)用將無處不在,隨時可用,但又無需安裝卸載。
小程序的架構(gòu):包含View視圖層、AppService邏輯層。
View層用來渲染頁面結(jié)構(gòu),AppService層用來邏輯處理、數(shù)據(jù)請求、接口調(diào)用,它們在兩個線程里運行。
視圖層使用WebView渲染,邏輯層使用JSCore運行。視圖層和邏輯層通過系統(tǒng)層的JSBridage進行通信。

小程序的版本類型:為開發(fā)版、體驗版、正式版。
正式版需要經(jīng)過微信審核。開發(fā)版、體驗版無需審核,只需要給指定的微信號權(quán)限,然后掃小程序的二維碼就能訪問。
從小程序的版本類型可以看出,環(huán)境一般會準備三套環(huán)境:開發(fā)版訪問的測試環(huán)境、體驗版訪問的預發(fā)布環(huán)境、正式版訪問的生產(chǎn)環(huán)境。

二、小程序的測試點
測試點可以從以下方面去考慮:功能測試、權(quán)限測試、UI測試、兼容性測試、接口測試、網(wǎng)絡(luò)測試、性能測試。
>>>>功能測試
小程序的功能測試跟APP功能測試,對于功能業(yè)務(wù)的測試思路及用到的用例設(shè)計方法是一樣的。
根據(jù)設(shè)計好的各個大類功能模塊劃分,然后再逐級細化,覆蓋到每個功能盡可能全面的測試點。
包括業(yè)務(wù)流程、數(shù)據(jù)流向、功能入口有效性檢查、交互性檢查測試。(注意:小程序除了本身功能的交互,它還和微信客戶端有著交集。)
a.入口 b.交易:小程序支持交易,那么它與微信的錢包,卡包,是有聯(lián)系的,需要測試

>>>>權(quán)限測試
未授權(quán)微信登錄小程序:
1)未授權(quán)時,使用一些業(yè)務(wù)功能的時候,都會彈出提醒‘先授權(quán)再操作對應(yīng)功能’;?
2)在提交數(shù)據(jù)到后臺的時候,會提示補充相關(guān)身份信息才能提交。
已授權(quán)微信登錄小程序:
1)授權(quán)微信訪問小程序,意味著自己的微信賬號可被小程序管理方獲?。?
2)自動以微信的身份行使業(yè)務(wù)操作權(quán)限,比如咨詢、支付、數(shù)據(jù)查詢等?。
所能查看的數(shù)據(jù)和操作的權(quán)限都應(yīng)該是同步一致的,同一微信號在不同手機端登錄授權(quán)查看數(shù)據(jù)權(quán)限。
>>>>界面UI測試
小程序的頁面測試和app的界面測試一樣,關(guān)注頁面展示元素,如菜單、對話框、窗口和其他可視控件的布局、風格,文字是否正確。
頁面是否美觀,頁面交互操作是否友好。操作是否設(shè)計頻繁、是否易操作。
但注意一點,微信小程序頁面層級跳轉(zhuǎn)默認不能超過10次,比如分類->數(shù)碼電子->數(shù)碼產(chǎn)品->相機->尼康->... 達到10次就不能跳轉(zhuǎn)了。
一般在進行需求設(shè)計時,頁面跳轉(zhuǎn)盡量在10次以內(nèi)。有超過跳轉(zhuǎn)10次的應(yīng)用場景,針對性開發(fā)。
>>>>兼容性測試
手機系統(tǒng):在 ios 上,小程序的邏輯代碼運行于JavaScriptCore 中,在Android上,這個任務(wù)則是交給 X5 內(nèi)核來完成。
所以有條件的話,不僅要覆蓋android和ios,包括主流的Android和ios品牌也要覆蓋,比如華為,小米,iPhone11,iPhoneXR等等。覆蓋到最新的試用版和當前流行的主要版本。
微信版本:與微信版本的兼容性問題主要體現(xiàn)在小程序api庫的版本上。
因為微信小程序SDK的API版本一直都在更新,導致SDK的API有可能有向下的兼容性問題。
例如在最新版本小程序SDK上開發(fā)的程序不能在低版本的SDK上像預期的那樣運行。
所以測試微信版本的兼容性之前要先確定小程序使用的庫版本在哪些微信版本號上支持。
屏幕大小:微信小程序定義了一個新的尺寸單位rpx(responsive pixel)。
它可以適配不同的屏幕大小,但是需要注意一個特殊的尺寸1rpx,因為這個尺寸經(jīng)常在iphone7p上出現(xiàn)問題。所以,只需要關(guān)注一下即可。
>>>>接口測試
目前大部分都是微服務(wù)的架構(gòu),小程序調(diào)用的是后臺的接口,所以這里的接口測試和平時的接口測試是一樣的。
但我們需要了解微信小程序SDK提供的接口是什么類型的。
>>>>網(wǎng)絡(luò)測試
網(wǎng)絡(luò)測試可參考APP的測試,包括網(wǎng)絡(luò)切換,3G/4G/5G/wifi的切換;
斷網(wǎng)測試,以及弱網(wǎng)測試,像弱網(wǎng)場景下超時是否給予合理提醒、丟包是否有重發(fā)機制。主要是考察小程序在各種網(wǎng)絡(luò)狀況下的運行情況。
>>>>性能測試
小程序調(diào)用接口的時候?qū)τ诜?wù)器端性能。例如并發(fā)量多大,服務(wù)器是否有影響。
小程序本身的性能包括:頁面的白屏時間、首屏時間、資源(CPU、流量、電量、內(nèi)存等)占用、頁面渲染時間等等。
說明:本文為檸檬班土豆老師原創(chuàng),轉(zhuǎn)載需注明出處