什么是小程序
英文名Mini Program,是一種不需要下載安裝即可使用的應(yīng)用,是內(nèi)嵌在微信APP里面的一款新形態(tài)軟件。它實(shí)現(xiàn)了應(yīng)用“觸手可及”的夢想,用戶掃一掃或者搜一下即可打開應(yīng)用。也體現(xiàn)了“用完即走”的理念,用戶不用關(guān)心是否安裝太多應(yīng)用的問題。應(yīng)用將無處不在,隨時(shí)可用,但又無需安裝卸載。
小程序的架構(gòu):包含View視圖層、AppService邏輯層。View層用來渲染頁面結(jié)構(gòu),AppService層用來邏輯處理、數(shù)據(jù)請(qǐng)求、接口調(diào)用,它們?cè)趦蓚€(gè)線程里運(yùn)行。視圖層使用WebView渲染,邏輯層使用JSCore運(yùn)行。視圖層和邏輯層通過系統(tǒng)層的JSBridage進(jìn)行通信。
小程序的版本類型:為開發(fā)版、體驗(yàn)版、正式版。正式版需要經(jīng)過微信審核。開發(fā)版、體驗(yàn)版無需審核,只需要給指定的微信號(hào)權(quán)限,然后掃小程序的二維碼就能訪問。從小程序的版本類型可以看出,環(huán)境一般會(huì)準(zhǔn)備三套環(huán)境:開發(fā)版訪問的測試環(huán)境、體驗(yàn)版訪問的預(yù)發(fā)布環(huán)境、正式版訪問的生產(chǎn)環(huán)境。
小程序的測試點(diǎn)
測試點(diǎn)可以從以下方面去考慮:功能測試、權(quán)限測試、UI測試、兼容性測試、接口測試、網(wǎng)絡(luò)測試、性能測試。
<功能測試>小程序的功能測試跟APP功能測試,對(duì)于功能業(yè)務(wù)的測試思路及用到的用例設(shè)計(jì)方法是一樣的。根據(jù)設(shè)計(jì)好的各個(gè)大類功能模塊劃分,然后再逐級(jí)細(xì)化,覆蓋到每個(gè)功能盡可能全面的測試點(diǎn)。包括業(yè)務(wù)流程、數(shù)據(jù)流向、功能入口有效性檢查、交互性檢查測試。
注意:小程序除了本身功能的交互,它還和微信客戶端有著交集。a.入口 b.交易:小程序支持交易,那么它與微信的錢包,卡包,是有聯(lián)系的,需要測試
<權(quán)限測試>未授權(quán)微信登錄小程序:
1)未授權(quán)時(shí),使用一些業(yè)務(wù)功能的時(shí)候,都會(huì)彈出提醒‘先授權(quán)再操作對(duì)應(yīng)功能’;
2)在提交數(shù)據(jù)到后臺(tái)的時(shí)候,會(huì)提示補(bǔ)充相關(guān)身份信息才能提交。
已授權(quán)微信登錄小程序:
1)授權(quán)微信訪問小程序,意味著自己的微信賬號(hào)可被小程序管理方獲?。?/p>
2)自動(dòng)以微信的身份行使業(yè)務(wù)操作權(quán)限,比如咨詢、支付、數(shù)據(jù)查詢等 。所能查看的數(shù)據(jù)和操作的權(quán)限都應(yīng)該是同步一致的,同一微信號(hào)在不同手機(jī)端登錄授權(quán)查看數(shù)據(jù)權(quán)限。
<界面UI測試>小程序的頁面測試和app的界面測試一樣,關(guān)注頁面展示元素,如菜單、對(duì)話框、窗口和其他可視控件的布局、風(fēng)格,文字是否正確,頁面是否美觀,頁面交互操作是否友好。操作是否設(shè)計(jì)頻繁、是否易操作。但注意一點(diǎn),微信小程序頁面層級(jí)跳轉(zhuǎn)默認(rèn)不能超過10次,比如分類->數(shù)碼電子->數(shù)碼產(chǎn)品->相機(jī)->尼康->... 達(dá)到10次就不能跳轉(zhuǎn)了。一般在進(jìn)行需求設(shè)計(jì)時(shí),頁面跳轉(zhuǎn)盡量在10次以內(nèi)。有超過跳轉(zhuǎn)10次的應(yīng)用場景,針對(duì)性開發(fā)。
<兼容性測試>手機(jī)系統(tǒng):在 ios 上,小程序的邏輯代碼運(yùn)行于JavaScriptCore 中,在Android上,這個(gè)任務(wù)則是交給 X5 內(nèi)核來完成。所以有條件的話,不僅要覆蓋android和ios,包括主流的Android和ios品牌也要覆蓋,比如華為,小米,iPhone11,iPhoneXR等等。覆蓋到最新的試用版和當(dāng)前流行的主要版本。微信版本:與微信版本的兼容性問題主要體現(xiàn)在小程序api庫的版本上。因?yàn)槲⑿判〕绦騍DK的API版本一直都在更新,導(dǎo)致SDK的API有可能有向下的兼容性問題,例如在最新版本小程序SDK上開發(fā)的程序不能在低版本的SDK上像預(yù)期的那樣運(yùn)行。所以測試微信版本的兼容性之前要先確定小程序使用的庫版本在哪些微信版本號(hào)上支持。屏幕大?。何⑿判〕绦蚨x了一個(gè)新的尺寸單位rpx(responsive pixel),它可以適配不同的屏幕大小,但是需要注意一個(gè)特殊的尺寸1rpx,因?yàn)檫@個(gè)尺寸經(jīng)常在iphone7p上出現(xiàn)問題。所以,只需要關(guān)注一下即可。更多軟件測試技巧進(jìn)階分享,歡迎加入我們1079636098免費(fèi)獲取。
<接口測試>目前大部分都是微服務(wù)的架構(gòu),小程序調(diào)用的是后臺(tái)的接口,所以這里的接口測試和平時(shí)的接口測試是一樣的。但我們需要了解微信小程序SDK提供的接口是什么類型的。
<網(wǎng)絡(luò)測試>網(wǎng)絡(luò)測試可參考APP的測試,包括網(wǎng)絡(luò)切換,3G/4G/5G/wifi的切換;斷網(wǎng)測試,以及弱網(wǎng)測試,像弱網(wǎng)場景下超時(shí)是否給予合理提醒、丟包是否有重發(fā)機(jī)制。主要是考察小程序在各種網(wǎng)絡(luò)狀況下的運(yùn)行情況。
<性能測試>小程序調(diào)用接口的時(shí)候?qū)τ诜?wù)器端性能。例如并發(fā)量多大,服務(wù)器是否有影響。小程序本身的性能包括:頁面的白屏?xí)r間、首屏?xí)r間、資源(CPU、流量、電量、內(nèi)存等)占用、頁面渲染時(shí)間等等。
如果對(duì)python自動(dòng)化測試、web自動(dòng)化、接口自動(dòng)化、移動(dòng)端自動(dòng)化、面試經(jīng)驗(yàn)交流等等感興趣的測試人,可以關(guān)注Q群。加入我們免費(fèi)獲取更多軟件測試進(jìn)階資料!