微信小程序測試


前言

2017年1月9號微信小程序正式上線,小程序無須安裝就能使用,比App輕量、比Web網頁簡潔,依托微信強大的生態環境,能做到很多H5所不能做的事情,但由於依賴微信生態,必須遵守微信生態的規則。

對於小程序的測試,這里將結合我幾年的小程序測試經驗以及網上資料從幾個方面做一下整理。

 

一、小程序相關介紹

在測試前,需要先了解下小程序特性和規則。

 

  • 小程序的限制

1. 頁面層級跳轉不能超過5層:(好像最新的文檔說小程序頁面訪問層級限制放寬至10層)小程序原生頁面存在5層限制問題,即超過5層時便無法打開新頁面,而業務流程或者訪問形成閉環時,很容易陷入5層問題。

2. 用戶本地緩存不能超過10MB。

3. 小程序代碼包不能超過3M,所以部分圖片資源需上傳CDN。

4. 小程序發布需提交微信審核通過才可發版。

  • 小程序版本——開發版、體驗版、正式版

 

1. 小程序跟web/h5端的測試版本有點不一樣,它有3個版本,分別為開發版、體驗版、線上正式版(也叫發布版)

        開發版:用於開發、測試進行測試

        體驗版:可通過二維碼分享體驗、測試,需要管理員為微信號添加體驗權限

        正式版:將體驗版提交微信審核,通過后即可發布上線正式版小程序(審核時間一般在1-2天)

2. 如果只是開發后端邏輯功能,可在三個版本中任意一個進行測試;如果是開發前端功能則需在相應的開發版進行測試。

3. 三者具體區別如下:

權限層:前兩者需申請開發者和體驗者權限才可使用,后者則面向所有微信用戶。

性能層:開發版和體驗版自身帶有vConsole性能面板,而線上版則木有。

代碼層:開發人員可同時在多個開發版上開發互不影響;體驗版當前只能有一份代碼處於審核中,審核通過后可發布上線,也可直接重新提交審核,覆蓋原審核版本;線上版本則為所有用戶使用的代碼版本,該版本代碼在新版本代碼發布后被覆蓋更新。

4. 包大小:開發版本不限制包大小;體驗版&正式版則限制包大小。

5. 二維碼:體驗版保持不變,開發版30min后失效需重新生成。 

  • 緩存機制

1. 為了保證小程序的快速訪問和用戶體驗,微信會緩存小程序,包括小程序文件、授權數據、登錄數據等。

2. 使用小程序常碰到緩存問題,例如切換后端接口環境、cookie、發版、登錄等,簡單粗暴的方法就是將小程序刪掉重新進入即可。

① 小程序的啟動方式:

     冷啟動----小程序首次打開或銷毀后再次被打開。

     熱啟動----小程序打開后,在一段時間內(目前:5分鍾)再次被打開,此時會將后台的小程序切換到前台(點擊右上角x掉小程序,其實小程序只是退到后台,並沒有被關閉/銷毀)。

② 根據以上兩種啟動方式,相應的更新機制為:

    小程序冷啟動時,會檢查小程序是否有最新版本。

 如果有則將異步下載最新版本,但是仍將運行當前版本等到下一次冷啟動時再運行最新版本。

  • 其他

1. 小程序頂部標題:ios居中,安卓居左

2.可以使用騰訊地圖定位(微信的不需要配置域名)

3.安卓的小程序支持放在桌面,ios不支持

4.小程序不支持長按掃碼識別

5.ios小程序不支持虛擬支付(違反被封后ios端會無法訪問小程序)

 

二、小程序4大測試

  • 功能測試

功能測試就是根據業務功能邏輯來測試。

  • 兼容性測試

包括操作系統兼容性,屏幕兼容性,微信兼容性。

操作系統兼容性:為什么小程序會出現操作系統兼容性,因為Android和ios系統上小程序的JavaScript腳本的執行環境不同。官方文檔中有說明,在開發工具上,小程序的js代碼時運行在nwjs中,在ios上是運行在JavaScriptCore中,在Android上是通過X5JSCore來解析的。正因為腳本執行的環境不同,因此在開發工具上正常的小程序有可能在ios和Android系統上不符合預期。

屏幕兼容性測試:微信小程序定義了一個新的尺寸單位rpx(responsive pixel)可以適配不同尺寸的屏幕,在頁面上定義對象的單位是rpx就可以在不同的屏幕上適配。因此對測試來說不需要測試各種屏幕下的頁面顯示。但是,在實際測試的過程中仍然存在屏幕適配的時候出現像素問題,因此需要在測試過程中注意屏幕兼容性問題。

微信兼容性:與微信版本的兼容性問題主要體現在小程序api庫的版本上,有些比較老的版本的小程序api庫不支持新版api,因此會出現兼容性問題。所以測試微信版本的兼容性之前要先確定小程序使用的庫版本在哪些微信版本號上支持。

  • 性能測試

這里主要是測試頁面的白屏時間,首屏時間,資源占用,頁面渲染時間等等。

  • 自動化測試

小程序的自動化測試是個必然的趨勢,自動化測試可以提高回歸效率,是一種重要的輔助測試手段。

 

 

三、小程序測試需要注意的地方

  • 小程序限制對測試的影響

目前小程序在UI、設計、樣式、頁面跳轉、消息大小等都有自己的限制,這些限制對測試來說主要是以下幾個方面:

1. 數量限制

小程序一個應用只能同時打開5個頁面,在規划新需求的時候一般會考慮到5個頁面的限制,但是需求迭代越來越多跳轉關系比較復雜的時候很容易忽略5個頁面的限制,這個時候如果跳轉邏輯超過5個頁面會出現跳轉打不開的情況。因此在需求評審的時候就應該把小程序的跳轉關系有個整體的梳理,在新加頁面處理跳轉關系的時候能夠一目了然不會出現超過5層限制的問題。

如果已經做到跳出5個頁面的限制,需要特別查看各個頁面間的跳轉情況,重復進入的頁面以及關閉頁面能否返回上一層頁面。

2. 大小限制

小程序源碼打包后的大小限制為1M,因此源碼中的圖片和icon和數據等都需要壓縮。這里就可能出現數據和圖片丟失,不清晰等問題。

  • 域名問題

小程序無法請求訪問未配置的其他業務域名 / 非https域名,在管理后台配置相關域名后,才能請求。

另外,如果接口為測試環境的小程序,在手機上測試需要打開調試才能訪問(打開調試時是不校驗域名的,任何域名都能訪問);而在開發者工具測試需要勾選【詳情】中的【不校驗合法域名,web-view(業務域名),TLS版本以及HTTPS證書】。

所以涉及到有外鏈跳轉、訪問其他業務域名的測試時,需要注意這個域名問題。

  • 小程序碼跳轉問題

經過服務端的配置生成了小程序二維碼,不管什么環境,用手機掃小程序二維碼都會跳到手機已經發布的正式版小程序中。

測試時,需要跳轉到指定環境的小程序開發版本,可以把小程序碼保存到電腦中,使用開發者工具的【通過二維碼編譯】進行跳轉。

  • 小程序舊版本兼容問題(前端小程序版本和后端代碼上線時間順序問題)

由於小程序版本是需要微信審核通過后才能發布更新前端代碼的,如果是一些優化類的功能,后端代碼先上線后,而前端代碼未上線,就需要注意考慮一個小程序舊版本兼容問題 或 上線時間順序問題

優化類的功能,一般后端不能直接在原來的接口或字段中直接修改相關邏輯,需要做新、舊接口的兼容。

 

 

 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM